Partager via


ActiveDirectoryMembershipProvider.CreateUser Méthode

Définition

Ajoute un nouvel utilisateur au magasin de données Active Directory.

public:
 override System::Web::Security::MembershipUser ^ CreateUser(System::String ^ username, System::String ^ password, System::String ^ email, System::String ^ passwordQuestion, System::String ^ passwordAnswer, bool isApproved, System::Object ^ providerUserKey, [Runtime::InteropServices::Out] System::Web::Security::MembershipCreateStatus % status);
public override System.Web.Security.MembershipUser CreateUser (string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out System.Web.Security.MembershipCreateStatus status);
override this.CreateUser : string * string * string * string * string * bool * obj * MembershipCreateStatus -> System.Web.Security.MembershipUser
Public Overrides Function CreateUser (username As String, password As String, email As String, passwordQuestion As String, passwordAnswer As String, isApproved As Boolean, providerUserKey As Object, ByRef status As MembershipCreateStatus) As MembershipUser

Paramètres

username
String

Nom d’utilisateur du nouvel utilisateur.

password
String

Mot de passe du nouvel utilisateur.

email
String

Adresse e-mail du nouvel utilisateur.

passwordQuestion
String

Question de mot de passe pour le nouvel utilisateur.

passwordAnswer
String

Réponse de mot de passe du nouvel utilisateur.

isApproved
Boolean

Indique si le nouvel utilisateur est approuvé pour être validé.

providerUserKey
Object

Identificateur unique tiré de la source de données d’appartenance pour l’utilisateur. Ce paramètre doit être null lors de l'utilisation de la classe ActiveDirectoryMembershipProvider.

status
MembershipCreateStatus

Cette méthode retourne une des valeurs d'énumération MembershipCreateStatus, indiquant si l'utilisateur a été créé avec succès.

Retours

Instance de ActiveDirectoryMembershipUser contenant les informations pour l'utilisateur créé récemment, ou null si la création de l'utilisateur a échoué.

Exceptions

Le paramètre providerUserKey n’est pas null.

L'administrateur n'a pas mappé les champs de question et de réponse de mot de passe aux attributs du schéma Active Directory, et le paramètre passwordQuestion ou passwordAnswer n'est pas null.

L’élément de configuration machineKey (Schéma des paramètres ASP.NET) indique une clé de chiffrement d’ordinateur générée automatiquement. Vous devez définir explicitement l’attribut decryptionKey de l’élément machineKey (Schéma des paramètres ASP.NET) pour stocker les réponses de mot de passe avec ActiveDirectoryMembershipProvider.

- ou -

Le ActiveDirectoryMembershipProvider n'a pas pu établir une connexion sécurisée à l'annuaire lors de la tentative de définition du mot de passe pour le nouvel utilisateur.

Une erreur s'est produite lors de la tentative de création de l'utilisateur.

Remarques

La CreateUser méthode est appelée par la Membership classe pour créer un utilisateur dans le magasin de données Active Directory.

Pour les serveurs Active Directory et Adam (Active Directory Application Mode), la ActiveDirectoryMembershipProvider classe nécessite que la classe d’instance dans le répertoire soit user. Les autres classes d’utilisateur telles que inetOrgPerson ne sont pas prises en charge.

Lorsque vous utilisez un serveur Active Directory et que le nom d’utilisateur est mappé à l’attribut userPrincipalName , la ActiveDirectoryMembershipProvider classe génère automatiquement un nom d’utilisateur aléatoire de 20 caractères pour le sAMAccountName paramètre en votre nom.

Les paramètres sont par défaut les longueurs maximales suivantes.

Paramètre Longueur maximale
username 64 caractères si vous utilisez l’attribut userPrincipalName . Si vous utilisez l’attribut sAMAccountName , la restriction courante est de 20 caractères ou moins.
password 128 caractères.
email 256 caractères.
passwordQuestion 256 caractères.
passwordAnswer 128 caractères avant et après le chiffrement.

La Comment propriété sur l’instance retournée ActiveDirectoryMembershipUser est limitée à 1 024 caractères.

Si le schéma de répertoire a été modifié en réduisant les longueurs maximales autorisées pour ces attributs, ces longueurs sont prioritaires.

Avant de créer l’utilisateur, la ActiveDirectoryMembershipProvider classe vérifie que le nom d’utilisateur est unique. Si l’instance ActiveDirectoryMembershipProvider est configurée pour exiger des adresses e-mail uniques, elle vérifie également que l’adresse e-mail est unique.

Dans un nom d’utilisateur Active Directory, l’unicité est appliquée en effectuant une recherche gc lorsque le nom d’utilisateur est mappé à userPrincipalName. Si sAMAccountName est utilisé, l’annuaire applique automatiquement l’unicité de dans sAMAccountName le domaine Active Directory.

Un serveur ADAM applique automatiquement l’unicité du nom d’utilisateur sur userPrincipalName toutes les partitions d’application.

L’unicité de l’adresse e-mail est appliquée en effectuant une recherche de sous-arborescence pour une adresse e-mail en double commençant à la racine du conteneur dans lequel les utilisateurs sont créés. Il s’agit du conteneur utilisateur par défaut (s’il est connecté à un annuaire Active Directory et qu’aucun conteneur n’a été spécifié dans la chaîne de connexion) ou du conteneur spécifié dans la chaîne de connexion.

La ActiveDirectoryMembershipProvider classe crée l’utilisateur directement dans le conteneur utilisateur spécifié dans la chaîne de connexion. Consultez la rubrique de ActiveDirectoryMembershipProvider classe pour plus d’informations sur les chaînes de connexion.

Pour que les mots de passe soient définis sur un serveur Active Directory, l’attribut connectionProtection doit avoir la valeur SignAndSeal.

Lorsqu’un serveur ADAM est utilisé, l’attribut connectionProtection peut être défini sur None, mais uniquement si vous configurez explicitement le serveur ADAM pour autoriser les modifications de mot de passe sur des connexions non sécurisées.

Les espaces de début et de fin sont supprimés de toutes les valeurs de paramètre de chaîne à l’exception passwordde .

Important

Vous ne pouvez pas créer de nouveaux utilisateurs, sauf si les informations d’identification utilisées pour se connecter au serveur Active Directory disposent de droits d’administrateur de domaine (non recommandé) ou des droits d’accès « créer une instance enfant », « supprimer l’instance enfant » et « définir le mot de passe ». Le droit d’accès « supprimer l’instance enfant » est requis, car la création d’un utilisateur est un processus en plusieurs étapes, et si une étape de création d’utilisateur échoue, la ActiveDirectoryMembershipProvider classe supprime l’instance utilisateur au lieu de laisser une instance d’utilisateur partiellement construite dans l’annuaire.

S’applique à

Voir aussi