ASP.NET 2.0的membership和role
manager能夠非常好的解決這個問題,不但
可以對用戶的登陸信息進行統一管理,還
可以就用戶的權限進行分類管理,讓開發
者方便的就網站權限與安全性進行設定。
ASP.NET通過與IIS協同工作來進行授權管
理。共兩種身份認證方式
..通過查詢acls列表或者許可證來判定該訪問
是否擁有瀏覽的權利。
第一種認證方式會根據用戶的登陸信息來判
定asp.net針對該用戶所指定的系統帳號,
然後再判斷該系統帳號是否對被請求的本
地資源有訪問權限。
第二種身份認證方式通過檢查asp.net配置文
件來進行授權認證。
A、windows驗證
<system.web>
<authentication mode="Windows"/>
</sytem.web>
User.Identity.Name; --獲取登錄的用戶名<windows驗證>
B、form驗證
<system.web>
<authentication mode="Forms"/> <authorization>
<forms name=".ASPXCOOKIEDEMO"
loginUrl="login.aspx" protection="All" timeout="30"
path="/">
<!-- protection="[All|None|Encryption|Validation]" -->
</forms>
<deny users="?" />
</authorization>
</system.web>
C、Web.config配置
<authentication>
?<credentials passwordFormat="SHA1" >
?<user name="Mary"
password="94F85995C7492EEC546C321821AA4BECA
9A3E2B1"/>
?<user name="John"
password="5753A498F025464D72E088A9D5D6E87259
2D5F91"/>
?</credentials>
?</authentication>
LoginStatus --登錄的狀態
登錄與創建用戶
<asp:Login ID="Login1" runat="server" CreateUserUrl="~/Default4.aspx" CreateUserText="鍒涘緩鐢ㄦ埛">
</asp:Login>
--用戶訪問的權限,那類用戶可以訪問
<location path="Common/frmDoAction.aspx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
<location path="Default.aspx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
--Membership管理用戶
Membership.CreateUser("user","pass");
角色管理
roles
Roles.AddUsersToRole(""); --將用戶添加到角色
Roles.RemoveUserFromRole(""); --將用戶從角色移除
ASP.net編碼
在text命名空間下有專門的encode編碼方式設置,如果是在Ide環境設置的話,我認爲現在默認的是utf-8
membership將用戶信息保存在SQL中的數據表中
如果禁用cookie可以 passport驗證
如果沒安裝SQL server ,可以使用內建的數據Msde