Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

script création utilisateur

1 réponse
Avatar
Sly
bonjour à tous,

je désire créer des utilisateurs AD automatiquement, pour cela j'ai voulu
utiliser la commande net users, mais cela ne me permets pas de paramétrer mon
utilisateur complètement.

voici les informations que je désire attacher à l'utilisateur :

- login
- Nom complet
- password
- répertoire de travail (connecté à U:)
- script d'ouverture de session
- groupe

Existe - t - il d'autres communtateur pour net users ? un autre outil (kit
de ressources ...) ?

d'avance merci de votre aide.

cordialement,
Sly

1 réponse

Avatar
Jonathan Bismuth
préfère plutôt des outils tel que ldifde ou plus simplement un script de ce
genre :

user = WScript.Arguments(0)

'#### Constantes pasword
Const ADS_ACETYPE_ACCESS_DENIED_OBJECT = &H6
Const ADS_ACEFLAG_OBJECT_TYPE_PRESENT = &H1
Const CHANGE_PASSWORD_GUID = "{ab721a53-1e2f-11d0-9819-00aa0040529b}"
Const ADS_RIGHT_DS_CONTROL_ACCESS = &H100


'#### Création de l'utilisateur

Set objOU = GetObject("LDAP://CN=USERS,DC=domaine,DC=ext")
msgbox "cn="&user

Set objUser = objOU.Create("User","cn="&user)
objUser.Put "sAMAccountName",""&user
objUser.Put "UserPrincipalName",""&user
objUser.SetInfo

'### Modification de la date d'expiration, du mot de passe et du changement
de password au logon
objUser.AccountDisabledúlse
objUser.AccountExpirationDate = "01/01/1970"
objUser.Setinfo
objuser.SetPassword ""&user
objuser.Setinfo

objUser.Put "pwdLastSet", -1
objUser.SetInfo
'### verouillage du changement de mot de passe

Set objSD = objUser.Get("ntSecurityDescriptor")
Set objDACL = objSD.DiscretionaryAcl
arrTrustees = array("nt authorityself", "EVERYONE")

For Each strTrustee in arrTrustees
Set objACE = CreateObject("AccessControlEntry")
objACE.Trustee = strTrustee
objACE.AceFlags = 0
objACE.AceType = ADS_ACETYPE_ACCESS_DENIED_OBJECT
objACE.Flags = ADS_ACEFLAG_OBJECT_TYPE_PRESENT
objACE.ObjectType = CHANGE_PASSWORD_GUID
objACE.AccessMask = ADS_RIGHT_DS_CONTROL_ACCESS
objDACL.AddAce objACE
Next

objSD.DiscretionaryAcl = objDACL
objUser.Put "nTSecurityDescriptor", objSD
objUser.SetInfo

'### ajout du profil utilisateur et du flag de "mot de passe ne change
jamais"
objUser.Put "profilePath", "serverprofils$"&user
flags = objUser.Get("UserAccountControl")
objUser.Put "userAccountControl", 65536
objUser.SetInfo

'### ajout du home dir
objUser.HomeDirectory = "Directory Path"
objUser.put ("HomeDirDrive"), "U:"

'### ajout du loginscript
objUser.LoginScript = "login.vbs"
objUser.SetInfo

'## ajout du nom complet
objUser.FullName = "Jean Dupont"
objUser.SetInfo

'### ajout à un groupe spécifié
Set objGroup = GetObject("LDAP://CN=Group,CN=USERS,DC=domaine,DC=ext")
objGroup.Add objUser.ADSPath
objGroup.Setinfo

Cordialement,

--
Jonathan BISMUTH
MCSE 2000/ADSI-AutoIT Scripter
Transcript (ID: 691839, code: MCSE2000)
www.portail-mcse.net
pour me contacter http://cerbermail.com/?z5pCI2OyS6

"Sly" a écrit dans le message de news:

bonjour à tous,

je désire créer des utilisateurs AD automatiquement, pour cela j'ai voulu
utiliser la commande net users, mais cela ne me permets pas de paramétrer
mon
utilisateur complètement.

voici les informations que je désire attacher à l'utilisateur :

- login
- Nom complet
- password
- répertoire de travail (connecté à U:)
- script d'ouverture de session
- groupe

Existe - t - il d'autres communtateur pour net users ? un autre outil (kit
de ressources ...) ?

d'avance merci de votre aide.

cordialement,
Sly