Vinay Dhareshwar
Introduction Membership Service Login Controls Role Management Service 2
Most business applications require role- based security. Role management lets you create groups of users as a unit Roles give flexibility to change permissions and add and remove users. Each Web page in the Web application can be assigned a security level As you define more access rules for your application, roles become a more convenient way to apply the changes to groups of users. 3
Manages users and credentials Simplifies forms authentication Provider-based for flexible data storage 4
Membership API Membership Data Controls LoginLoginLoginStatusLoginStatusLoginViewLoginView Other Membership Providers Providers Membership Providers MembershipMembershipMembershipUserMembershipUser SqlMembershipProviderSqlMembershipProvider OtherControlsOtherControls SQL Server Other Data Stores SQL Server Express 5
try { Membership.CreateUser ("Jeff", "imbatman!", } catch (MembershipCreateUserException e) { // Find out why CreateUser failed switch (e.StatusCode) { case MembershipCreateStatus.DuplicateUsername:... case MembershipCreateStatus.Duplicate ... case MembershipCreateStatus.InvalidPassword:... default:... } 7
Represents individual users registered in the membership data store Returned by Membership methods such as GetUser and CreateUser 8
<membership defaultProvider="AspNetSqlMembershipProvider" userIsOnlineTimeWindow = "00:15:00" hashAlgorithmType = "[SHA1|MD5]" >... 10
12
Displays content differently to different users depending on: ◦ Whether user is authenticated ◦ If user is authenticated, the role memberships he or she is assigned Template-driven ◦ ◦ and 13
... 14
Role-based security in a box Simplifies adding role-based security to sites that employ forms authentication Provider-based for flexible data storage 15
Roles API Roles Data SQL Server Other Data Stores Controls LoginLoginLoginStatusLoginStatusLoginViewLoginView Other Role Providers Role Providers RolesRoles SqlRoleProviderSqlRoleProvider SQL Server Express OtherControlsOtherControls 16
Provides static methods for performing key role management tasks Includes read-only static properties for acquiring data about provider settings 17
if (!Roles.RoleExists ("Developers")) { Roles.CreateRole ("Developers"); } string name = Membership.GetUser ().Username; // Get current user Roles.AddUserToRole (name, "Developers"); // Add current user to role 19
<roleManager enabled="[true|false]" defaultProvider="AspNetSqlRoleProvider" createPersistentCookie="[true|false]" cacheRolesInCookie="[true|false]" cookieName=".ASPXROLES" cookieTimeout="00:30:00" cookiePath="/" cookieRequireSSL="[true|false]" cookieSlidingExpiration="[true|true]" cookieProtection="[None|Validation|Encryption|All]" domain="" maxCachedResults="25" >... 20
Role management is provider-based Ships with three role providers: ◦ AuthorizationStoreRoleProvider (Authorization Manager, or "AzMan") ◦ SqlRoleProvider (SQL Server) ◦ WindowsTokenRoleProvider (Windows) Use custom providers for other data stores 21
<add applicationName="/" connectionStringName="LocalSqlServer" name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider, System.Web,..." /> 22
23
sharpcorner.com/UploadFile/praveenalwar/PraveenAlwar AM/PraveenAlwar.aspx sharpcorner.com/UploadFile/praveenalwar/PraveenAlwar AM/PraveenAlwar.aspx management.html management.html trols_with_Roles_in_ASPNet_20.aspx trols_with_Roles_in_ASPNet_20.aspx b-4c80-4e f12f59bf1d4/ASP.NET2.0MembershipLoginControlsandRoleMan agement.pdf b-4c80-4e f12f59bf1d4/ASP.NET2.0MembershipLoginControlsandRoleMan agement.pdf 24