asp.net 2.0: implémenter son propre membership provider en 30 minutes danse didier - metrum most...
TRANSCRIPT
ASP.NET 2.0: Implémenter ASP.NET 2.0: Implémenter son propre Membership son propre Membership provider en 30 minutesprovider en 30 minutes
Danse Didier - Metrum Danse Didier - Metrum Most Valuable Professional Most Valuable Professional
ASP.NETASP.NETDeveloppez.comDeveloppez.com
HistoriqueHistorique
ASPASPAucune aide
ASP.NET 1.XASP.NET 1.X Forms authentication
ASP.NET 2.0ASP.NET 2.0 Membership APIs
Les « APIs Membership »Les « APIs Membership »
Permettent de:
Créer des utilisateursSauvegarder des informations dans des environnements différentsAuthentifier des utilisateursGérer des mots de passe
Membership serviceMembership service
MemberShip MemberShipUser
MemberShip API
SqlMemberShipProvider
ActiveDirectoryMemberShipProvider
OwnMemberShipProvider
Own DataActive DirectorySqlServer database
MemberShip Providers
MemberShip Data
Membership serviceMembership service
MemberShip MemberShipUser
MemberShip API
SqlMemberShipProvider
ActiveDirectoryMemberShipProvider
OwnMemberShipProvider
Own DataActive DirectorySqlServer database
MemberShip Providers
MemberShip Data
ASP.NET User management controls
CreateUser Login …
Méthodes Méthodes MembershipProviderMembershipProvider
UpdateUserCreateUserDeleteUser
ValidateUserUnlockUser
Méthodes Méthodes MembershipProviderMembershipProvider
GetUserNameByEmailFindUsersByEmail/FindUsersByName
ResetPasswordChangePassword
…
Méthodes Méthodes MembershipProviderMembershipProvider
CreateRoleDeleteRoleAddUserToRole
<roleManager enabled=“true” />
Activation dans le Web.ConfigActivation dans le Web.Config
ASP.NET Configuration ASP.NET Configuration websitewebsite
ASP.NET Configuration ASP.NET Configuration websitewebsite
Login ControlsLogin Controls
demdemoo
Déclaration des propriétés Déclaration des propriétés pour un utilisateurpour un utilisateur
<profile> <properties>
<add name="Theme" /> <add name="Birthday" type="System.DateTime" /> <add name="LoginCount" type="System.Int32" defaultValue="0" />
</properties> </profile>
Utilisation dans le code-Utilisation dans le code-behindbehind
string theme = Profile.Theme;dateTime anniversaire = Profile.Birthday;
…
Profile.Theme = "test“;
ProfileProfile
demdemoo
Membership serviceMembership service
MemberShip MemberShipUser
MemberShip API
SqlMemberShipProvider
ActiveDirectoryMemberShipProvider
OwnMemberShipProvider
MemberShipActive DirectorySqlServer database
MemberShip Providers
MemberShip Data
Membership ProvidersMembership Providers
MembershipProvider(classe abstraite)
OwnMembershipProvider
ActiveDirectoryMembershipProvider
SqlMembershipProvider
Extrait du Web.configExtrait du Web.config
<system.web> ... <membership defaultProvider=“TextMembershipProvider">
<providers> <add name=“TextMembershipProvider" type=“TextMembershipProvider" enablePasswordRetrieval=“true" enablePasswordReset=“true“ … />
</providers> </membership> ... </system.web>
Implémentation d’une classe Implémentation d’une classe dérivée de dérivée de MemberShipProviderMemberShipProvider
Déclaration dans web.configDéclaration dans web.config
demdemoo