Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Membership, classe

Valide les informations d'identification de l'utilisateur et gère les paramètres utilisateurs. Cette classe ne peut pas être héritée.

System.Object
  System.Web.Security.Membership

Espace de noms :  System.Web.Security
Assembly :  System.Web (dans System.Web.dll)
public static class Membership

Le type Membership expose les membres suivants.

  NomDescription
Propriété publiqueMembre statiqueApplicationNameObtient ou définit le nom de l'application.
Propriété publiqueMembre statiqueEnablePasswordResetObtient une valeur indiquant si le fournisseur d'appartenances courant est configuré pour permettre aux utilisateurs de réinitialiser leurs mots de passe.
Propriété publiqueMembre statiqueEnablePasswordRetrievalObtient une valeur indiquant si le fournisseur d'appartenances courant est configuré pour permettre aux utilisateurs de récupérer leurs mots de passe.
Propriété publiqueMembre statiqueHashAlgorithmTypeIdentificateur de l'algorithme utilisé pour hacher des mots de passe.
Propriété publiqueMembre statiqueMaxInvalidPasswordAttemptsObtient le nombre de tentatives de mot de passe ou de réponse de mot de passe non valides autorisées avant que l'utilisateur d'appartenance soit verrouillé.
Propriété publiqueMembre statiqueMinRequiredNonAlphanumericCharactersObtient le nombre minimal de caractères spéciaux qui doivent être présents dans un mot de passe valide.
Propriété publiqueMembre statiqueMinRequiredPasswordLengthObtient la longueur minimale requise pour un mot de passe.
Propriété publiqueMembre statiquePasswordAttemptWindowObtient la fenêtre de temps durant laquelle sont suivis les échecs des tentatives successives pour fournir un mot de passe ou une réponse de mot de passe valide.
Propriété publiqueMembre statiquePasswordStrengthRegularExpressionObtient l'expression régulière utilisée pour évaluer un mot de passe.
Propriété publiqueMembre statiqueProviderObtient une référence au fournisseur d'appartenances par défaut pour l'application.
Propriété publiqueMembre statiqueProvidersObtient une collection des fournisseurs d'appartenances pour l'application ASP.NET.
Propriété publiqueMembre statiqueRequiresQuestionAndAnswerObtient une valeur qui indique si le fournisseur d'appartenances par défaut exige que l'utilisateur réponde à une question de mot de passe pour la réinitialisation et la récupération de mot de passe.
Propriété publiqueMembre statiqueUserIsOnlineTimeWindowSpécifie le nombre de minutes devant s'écouler après l'horodatage de dernière activité pour qu'un utilisateur soit considéré en ligne.
Début
  NomDescription
Méthode publiqueMembre statiqueCreateUser(String, String)Ajoute un nouvel utilisateur au magasin de données.
Méthode publiqueMembre statiqueCreateUser(String, String, String)Ajoute au magasin de données un nouvel utilisateur avec une adresse de messagerie spécifiée.
Méthode publiqueMembre statiqueCreateUser(String, String, String, String, String, Boolean, MembershipCreateStatus)Ajoute au magasin de données un nouvel utilisateur avec les valeurs de propriété spécifiées et retourne un paramètre d'état indiquant que l'utilisateur a été correctement créé ou la raison de l'échec de la création.
Méthode publiqueMembre statiqueCreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus)Ajoute au magasin de données un nouvel utilisateur avec les valeurs de propriété spécifiées et un identificateur unique, puis retourne un paramètre d'état indiquant que l'utilisateur a été correctement créé ou la raison de l'échec de la création.
Méthode publiqueMembre statiqueDeleteUser(String)Supprime un utilisateur et toutes les données utilisateur connexes dans la base de données.
Méthode publiqueMembre statiqueDeleteUser(String, Boolean)Supprime un utilisateur de la base de données.
Méthode publiqueMembre statiqueFindUsersByEmail(String)Obtient une collection d'utilisateurs d'appartenance dont l'adresse de messagerie correspond à l'adresse spécifiée.
Méthode publiqueMembre statiqueFindUsersByEmail(String, Int32, Int32, Int32)Obtient une collection d'utilisateurs d'appartenance dont l'adresse de messagerie correspond à l'adresse spécifiée, sous forme de page de données.
Méthode publiqueMembre statiqueFindUsersByName(String)Obtient une collection d'utilisateurs d'appartenance dont le nom d'utilisateur correspond au nom spécifié.
Méthode publiqueMembre statiqueFindUsersByName(String, Int32, Int32, Int32)Obtient une collection d'utilisateurs d'appartenance dont le nom d'utilisateur correspond au nom spécifié, sous forme de page de données.
Méthode publiqueMembre statiqueGeneratePasswordGénère un mot de passe aléatoire de la longueur spécifiée.
Méthode publiqueMembre statiqueGetAllUsers()Obtient une collection de tous les utilisateurs dans la base de données.
Méthode publiqueMembre statiqueGetAllUsers(Int32, Int32, Int32)Obtient une collection de tous les utilisateurs dans la base de données sous forme de pages de données.
Méthode publiqueMembre statiqueGetNumberOfUsersOnlineObtient le nombre d'utilisateurs qui accèdent actuellement à une application.
Méthode publiqueMembre statiqueGetUser()Obtient les informations de la source de données et met à jour les informations de date et d'heure de dernière activité pour l'utilisateur d'appartenance connecté.
Méthode publiqueMembre statiqueGetUser(Boolean)Obtient de la source de données les informations sur l'utilisateur d'appartenance connecté. Met à jour les informations de date et d'heure de dernière activité pour l'utilisateur d'appartenance connecté, le cas échéant.
Méthode publiqueMembre statiqueGetUser(Object)Obtient de la source de données les informations sur l'utilisateur d'appartenance associé à l'identificateur unique spécifié.
Méthode publiqueMembre statiqueGetUser(String)Obtient de la source de données les informations sur l'utilisateur d'appartenance spécifié.
Méthode publiqueMembre statiqueGetUser(Object, Boolean)Obtient de la source de données les informations sur l'utilisateur d'appartenance associé à l'identificateur unique spécifié. Met à jour les informations de date et d'heure de dernière activité de l'utilisateur, le cas échéant.
Méthode publiqueMembre statiqueGetUser(String, Boolean)Obtient de la source de données les informations sur l'utilisateur d'appartenance spécifié. Met à jour les informations de date et d'heure de dernière activité de l'utilisateur, le cas échéant.
Méthode publiqueMembre statiqueGetUserNameByEmailObtient un nom d'utilisateur dont l'adresse de messagerie correspond à celle qui est spécifiée.
Méthode publiqueMembre statiqueUpdateUserMet à jour la base de données avec les informations de l'utilisateur spécifié.
Méthode publiqueMembre statiqueValidateUserVérifie que le nom d'utilisateur et le mot de passe fournis sont valides.
Début
  NomDescription
Événement publicMembre statiqueValidatingPasswordSe produit lorsqu'un utilisateur est créé, un mot de passe est modifié ou un mot de passe est réinitialisé.
Début

La classe Membership est utilisée dans les applications ASP.NET pour valider les informations d'identification de l'utilisateur et gérer les paramètres utilisateurs tels que les mots de passe et les adresses de messagerie. La classe Membership peut être utilisée seule ou conjointement avec FormsAuthentication afin de créer un système complet pour authentifier les utilisateurs d'un site ou d'une application Web. Le contrôle Login encapsule la classe Membership afin de fournir un mécanisme pratique pour valider les utilisateurs.

RemarqueRemarque

Si vous n'êtes pas familiarisé avec les fonctionnalités d'appartenance (membership) d'ASP.NET, consultez Introduction to Membership avant de continuer. Pour obtenir la liste des autres rubriques relatives à l'appartenance (membership), consultez Managing Users By Using Membership.

La classe Membership fournit des fonctionnalités pour exécuter les opérations suivantes :

  • Création d'utilisateurs.

  • Stockage des informations d'appartenance (membership), telles que les noms d'utilisateurs, les mots de passe, les adresses de messagerie et les données de prise en charge, dans Microsoft SQL Server ou dans un autre magasin de données.

  • authentification des utilisateurs qui visitent votre site. Vous pouvez authentifier des utilisateurs par programme ou vous pouvez utiliser le contrôle Login pour créer un système d'authentification complet qui requiert peu ou pas de code.

  • Gestion des mots de passe, qui inclut la création, la modification, la récupération et la réinitialisation, etc. Vous pouvez éventuellement configurer l'appartenance d'ASP.NET afin d'exiger une question et une réponse de mot de passe pour authentifier les demandes de réinitialisation ou de récupération de mot de passe pour les utilisateurs qui ont oublié leur mot de passe.

Bien que l'appartenance d'ASP.NET soit une fonctionnalité autonome dans l'authentification ASP.NET, elle peut être associée à la gestion des rôles ASP.NET pour fournir des services d'autorisation à votre site. L'appartenance peut également être associée au System.Web.Profile utilisateur ASP.NET pour fournir une personnalisation spécifique à l'application qui peut être adaptée aux utilisateurs individuels. Pour plus d'informations, consultez Understanding ASP.NET Role Management et Understanding ASP.NET Profile Properties.

La classe Membership s'appuie sur des fournisseurs d'appartenances pour communiquer avec une source de données. Le .NET Framework inclut un SqlMembershipProvider qui stocke des informations utilisateur dans une base de données Microsoft SQL Server et un ActiveDirectoryMembershipProvider qui vous permet de stocker des informations utilisateur sur un serveur Active Directory ou ADAM (Active Directory Application Mode). Vous pouvez également implémenter un fournisseur d'appartenances personnalisé afin qu'il communique avec une autre source de données pouvant être utilisée par la classe Membership. Les fournisseurs d'appartenances personnalisés héritent de la classe abstraite MembershipProvider. Pour plus d'informations, consultez Implementing a Membership Provider.

Par défaut, l'appartenance d'ASP.NET est activée pour toutes les applications ASP.NET. Le fournisseur d'appartenances par défaut est le SqlMembershipProvider et est appelé AspNetSqlProvider dans la configuration de l'ordinateur. L'instance par défaut de SqlMembershipProvider est configurée pour se connecter à une instance locale de Microsoft SQL Server.

Vous pouvez modifier les paramètres par défaut pour spécifier un SqlMembershipProvider autre que l'instance de AspNetSqlProvider comme fournisseur par défaut ou spécifier une instance d'un fournisseur personnalisé comme fournisseur par défaut pour votre application ASP.NET à l'aide du fichier Web.config. Vous pouvez spécifier la configuration d'appartenance d'ASP.NET de votre application Web à l'aide de la section de configuration membership dans le fichier Web.config. Vous pouvez utiliser la sous-section providers de la section membership pour spécifier un fournisseur d'appartenances autre que l'un des fournisseurs par défaut. Par exemple, la section membership suivante supprime les fournisseurs d'appartenances par défaut de la configuration d'application actuelle et ajoute un nouveau fournisseur nommé SqlProvider qui se connecte à une instance SQL Server appelée AspSqlServer.

<configuration>
  <connectionStrings>
    <add name="SqlServices" connectionString="Data Source=AspSqlServer;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
  </connectionStrings>
  <system.web>
    <membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
      <providers>
        <remove name="AspNetSqlProvider" />
        <add name="SqlProvider"
          type="System.Web.Security.SqlMembershipProvider"
          connectionStringName="SqlServices"
          enablePasswordRetrieval="false"
          enablePasswordReset="true"
          requiresQuestionAndAnswer="true"
          passwordFormat="Hashed"
          applicationName="/" />
      </providers>
    </membership>
  </system.web>
</configuration>
TopicLocation
Procédure pas à pas : création d'un site Web avec appartenance et connexion utilisateur (Visual Studio)Génération d'applications Web ASP.NET dans Visual Studio
Procédure pas à pas : création d'un site Web avec appartenance et connexion utilisateurGénération d'applications à l'aide de Visual Web Developer

L'exemple de code suivant affiche la page de connexion d'une application ASP.NET configurée pour utiliser l'authentification par formulaire et l'appartenance d'ASP.NET. Si les informations d'identification de l'utilisateur fournies ne sont pas valides, l'utilisateur reçoit un message. Sinon, l'utilisateur est redirigé vers l'URL demandée initialement à l'aide de la méthode RedirectFromLoginPage.

RemarqueRemarque

Les contrôles de connexion ASP.NET (Login, LoginView, LoginStatus, LoginName et PasswordRecovery) encapsulent virtuellement toute la logique requise pour demander aux utilisateurs leurs informations d'identification et valider ces informations dans le système d'appartenance. Ils peuvent être utilisés à la place du contrôle par programme à l'aide de la classe Membership.

Note de sécuritéNote de sécurité

Cet exemple comporte une zone de texte qui accepte l'entrée d'utilisateur, ce qui constitue une menace éventuelle pour la sécurité. Par défaut, les pages Web ASP.NET vérifient que les entrées d'utilisateur n'incluent pas de script ou d'éléments HTML. Pour plus d'informations, consultez Script Exploits Overview.


<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

public void Login_OnClick(object sender, EventArgs args)
{
   if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
   else
     Msg.Text = "Login failed. Please check your user name and password and try again.";
}


</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
  <title>Login</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />

  Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
  Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />

  <asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
  <asp:CheckBox id="NotPublicCheckBox" runat="server" /> 
  Check here if this is <span style="text-decoration:underline">not</span> a public computer.

</form>

</body>
</html>


.NET Framework

Pris en charge dans : 4.5, 4, 3.5, 3.0, 2.0

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
© 2013 Microsoft. Tous droits réservés.