Création d’un utilisateur
Pour créer un utilisateur dans Active Directory Domain Services, créez un objet utilisateur dans le conteneur de domaine du domaine dans lequel vous souhaitez placer l’utilisateur. Les utilisateurs peuvent être créés à la racine du domaine, au sein d’une unité d’organisation ou au sein d’un conteneur.
lorsque vous créez un objet utilisateur, vous devez également définir les attributs, indiqués dans le tableau suivant, pour définir l’objet en tant qu’utilisateur légal reconnu par Active Directory Domain Services et le système Sécurité Windows.
| Attribut | Description |
|---|---|
| 8525 | Spécifie le nom de l’objet utilisateur dans le répertoire. Il s’agit du RDN (relative Distinguished Name) de l’objet. |
| sAMAccountName | Spécifie une chaîne qui est le nom utilisé pour prendre en charge les clients et les serveurs d’une version précédente de Windows. Le sAMAccountName doit comporter moins de 20 caractères pour prendre en charge les clients d’une version précédente de Windows. SAMAccountName doit être unique parmi tous les objets principaux de sécurité au sein du domaine. Vous devez exécuter une requête sur le domaine pour vérifier que le sAMAccountName est unique au sein du domaine. sAMAccountName est un attribut facultatif. Le serveur crée une valeur sAMAccountName aléatoire si aucune valeur n’est spécifiée. |
Vous pouvez également définir d’autres attributs. Les attributs utilisateur suivants sont définis avec des valeurs par défaut si vous ne les définissez pas explicitement au moment de la création.
| Attribut | Description |
|---|---|
| AccountExpires dans | Spécifie la date d’expiration du compte. La valeur par défaut est TIMEQ_FOREVER, ce qui indique que le compte n’expirera jamais. |
| nTSecurityDescriptor | Un descripteur de sécurité est créé en fonction de règles spécifiques. Pour plus d’informations, voir Comment les descripteurs de sécurité sont définis sur les nouveaux objets d’annuaire. |
| objectCategory | Spécifie la catégorie d’utilisateur. La valeur par défaut est « Person ». |
| nomme | Spécifie le nom d'utilisateur. La valeur par défaut est la valeur définie pour CN. |
| pwdLastSet | Spécifie quand l’utilisateur a défini le mot de passe pour la dernière fois. La valeur par défaut est zéro, ce qui indique que l’utilisateur doit modifier le mot de passe à la prochaine ouverture de session. |
| userAccountControl | Contient des valeurs qui déterminent plusieurs fonctionnalités d’ouverture de session et de compte pour l’utilisateur. Par défaut, les indicateurs suivants sont définis :
|
| memberOf | Spécifie le ou les groupes dont l’utilisateur est membre direct. La valeur par défaut est « utilisateurs du domaine ». |
Un utilisateur est créé en liant le conteneur souhaité, puis en utilisant l’une des méthodes suivantes. Les attributs CN et sAMAccountName doivent être définis avant que l’utilisateur ne soit validé sur le serveur.
| Méthode | Description |
|---|---|
| IADsContainer. Create | L’attribut CN est extrait du paramètre bstrRelativeName . Le nouvel utilisateur doit être validé en appelant IADs. setinfo ou l’objet ne sera pas créé. Pour plus d’informations, consultez exemple de code pour la création d’un utilisateur. |
| IDirectoryObject::CreateDSObject | L’attribut CN est extrait du paramètre pszRDNName . Le nouvel utilisateur est validé quand CreateDSObject est appelé. Pour plus d’informations, consultez exemple de code pour la création d’un utilisateur. |
| DirectoryEntries. Add | L’attribut CN est extrait du paramètre Name . Le nouvel objet utilisateur doit être validé en appelant DirectoryEntry. CommitChanges ou l’objet ne sera pas créé. Pour plus d’informations, consultez Ajout d’objets d’annuaire. |
Le nouvel utilisateur doit être validé sur le serveur avant de pouvoir modifier les attributs autres que CN et sAMAccountName . Cela est dû au fait que le compte d’utilisateur n’existe pas tant que l’utilisateur n’a pas été validé. Si un attribut est récupéré ou modifié pour un objet qui n’existe pas sur le serveur, une erreur se produit. Cela comprend l’appel de la méthode IADsUser. SetPassword . Par exemple, la séquence suivante est suivie lors de la création d’un utilisateur avec IADsContainer. Create:
- Appelez IADsContainer. Create pour créer l’utilisateur dans le cache local avec le nom communspécifié.
- Affectez à l’attribut sAMAccountName la valeur souhaitée avec la méthode IADs. put .
- À présent, modifiez d’autres attributs, tels que UserAccountControl. Cette restriction s’applique également aux propriétés ADSI, telles que IADsUser. AccountDisabled, et aux méthodes telles que IADsUser. SetPassword.
- Appelez IADs. setinfo pour valider le nouvel utilisateur sur le serveur.
Lorsqu’un nouveau compte d’utilisateur est créé, il est désactivé par défaut. Le compte doit être activé manuellement ou par programme. Pour activer un compte d’utilisateur par programme, supprimez l’indicateur _ _ ACCOUNTDISABLE de publicités UF de l’attribut UserAccountControl .
Lorsqu’un nouveau compte d’utilisateur est créé, l’attribut UserAccountControl du compte est automatiquement associé à l’indicateur _ _ NOTREQD passwd passwd défini, ce qui indique qu’aucun mot de passe n’est requis pour le compte. Si les stratégies de sécurité du domaine dans lequel le compte est créé requièrent un mot de passe pour tous les comptes d’utilisateur, l’indicateur de _ _ NOTREQD passwd passwd doit être supprimé de l’attribut UserAccountControl pour le compte.