ASP.NET 2.0中的登陸控制項簡介

來源:互聯網
上載者:User

asp.net 2.0中,新增了許多新的功能和控制項。其中,新增的登陸控制項可謂使得WEB應用的設計更加得心應手。什麼是登陸控制項呢?就是我們平常在WEB應用中經常要用到的使用者註冊,登陸,忘記密碼,登陸後根據許可權的不同而顯示不同的頁面等功能,現在在asp.net 2.0中都已經可以由提供的控制項來實現了。ASP.NET 2.0中的登陸控制項比較多,封裝了大部分WEB應用中要實現系統登陸的系列功能,涉及到很多方面,本文將簡單介紹一下它們的主要功能。

首先,asp.net 2.0中,為了更方便建立和系統管理使用者,以及對 Web 應用程式中的頁進行密碼保護,引進了新的架構membership。新的架構套件含用於處理身分識別驗證和授權的新增功能,能夠同時滿足 Web 網站管理員和開發人員的需要。Web 網站管理員可以利用新的 Web 網站管理工具來建立新的使用者和角色,以及控制對 Web 應用程式中頁面的訪問。Web 網站管理工具是一組預先編寫的 ASP.NET頁,不具備編程技巧的使用者可以使用它們來配置 Web 應用程式。利用membership API,編程人員可以很方便地使用拖拉控制項的方法,再加以少量的代碼,就可以完全實現對使用者,角色許可權等的管理,還可以自訂做擴充。

其中,membership架構中包含了兩個預設的使用者驗證程式:預設的 AccessMembershipProvider以及 SqlMembershipProvider。如果希望在 Microsoft SQL Server 資料庫中儲存成員資格資訊,則可以將應用程式配置為使用 SqlMembershipProvider,如果要使用access資料庫,則使用AccessMembershipProvider。還可以建立自訂成員資格提供者。例如,如果需要在 XML 檔案、或 Oracle 資料庫中儲存成員資格資訊,希望建立自己的成員資格提供者,則需要實現抽象類別MembershipProvider 的所有方法和屬性。本文中,將以access資料庫為例子做說明,所以使用Accessmembershipprovider。

我們可以使用asp.net 2.0內建的WEB網站安全組態工具,就可以無需編程,在系統嚮導的帶領下,自動建立一個儲存使用者角色身份的資料庫了。比如,我們現在需要建立一個access的資料庫,裡面儲存使用者名稱,密碼,密碼提示問題,使用者EMAIL等資料,則可以通過web網站安全組態工具來實現。步驟如下:

1)先使用visual studio express 2005建立一個WEB網站,命名為Dorknozzle,使用VB.NET語言,之後,我們點選Visual studio express中的WebSite菜單中的ASP.NET Configuration,這時會彈出一個新的頁面視窗,其中選擇Security選項,如下圖:

2) 從上圖可以看到,安全設定選項被分為三部分:使用者,角色和規則。由於我們是第一次配置,選擇“To configure security step by step, use the Security Setup Wizard”,在出現的介面點“NEXT”進入下一步。

在第二步中,你可以選擇驗證的類型,比如你的網站是發布在internet還是intranet,再點next進入下一步,系統會提示目前是使用AspnetAccessProvider ,繼續點下一步,系統會詢問是否建立基於角色的應用,如果應用中要用到角色,就必須將那個單選框打勾,本文不選擇該項,繼續下一步。

3) 此時,系統會詢問我們輸入建立使用者的資訊,如下圖,比如輸入使用者名稱,密碼,EMAIL等資訊。在輸入後,點NEXT進入下一步。

4)系統會允許你對某一使用者進行有關規則的詳細設定,比如允許某一使用者行駛或拒絕使用某角色等。本文將忽略不用,繼續選NEXT進下一步,此時,完成了系統的初步配置了。

此時,AccessMembershipProvider會自動在當前工程的data目錄下,建立一個AspNetDB的ACCESS資料檔案,開啟它,會發現自動產生了相關的表格,比如有aspnet_users表,存放使用者的基本資料,aspnet_membership表,存放使用者加密的密碼和其他資訊。

在進行完上面的步驟後,下面我們開始認識並使用asp.net 2.0中的登陸控制項。這些控制項在工具箱的Login選項組中,共有Login, LoginView, PasswordRecovery, LoginStatus, LoginName, CreateUserWizard, ChangePassword 共7個,下面逐一介紹:

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.