def create_ad_user(samaccountname, email, ou, nome='Test'):
print(samaccountname, email, ou)
server = Server('ldap://', get_info=ALL, use_ssl=True)
conn = Connection(server, user='', password='',auto_bind=True)
password = 'Password123!'
# Crea l'utente
user_dn = f"CN={nome},{ou}"
attributes = {
"objectClass": ["top", "person", "organizationalPerson", "user"],
"sAMAccountName": samaccountname,
"givenName": 'Test',
"sn": 'Test',
"mail": email,
"description": 'Test creazione utenti con ldap3',
"userPrincipalName": f"{samaccountname}@ssn.local",
"unicodePwd": f'"{password}"'.encode("utf-16-le"),
"userAccountControl": 512, # Abilita l'account
}
success = conn.add(user_dn, attributes=attributes)
if not success:
print(f"Errore nella creazione dell'utente: {conn.result}")
return
# Modifica l'attributo pwdLastSet per forzare il cambio della password al prossimo accesso
conn.modify(user_dn, {"pwdLastSet": [(MODIFY_REPLACE, [0])]})
print(f"Utente {samaccountname} creato con successo in {ou}.")
'''
Если я удалю «unicodePwd» и «userAccountControl», все будет работать нормально, а если я добавлю их, будет сгенерировано следующее исключение (вывод of conn.result):
{'result': 53, 'description': 'unwillingToPerform',
'dn': '', 'message': '0000001F: SvcErr: DSID-031A12E8, проблема 5003 (WILL_NOT_PERFORM)
, данные 0\n\x00', 'рефералы': нет, 'тип': 'addResponse'
что я делаю не так?
success = conn.add(user_dn, attributes=attributes) if not success: print(f"Errore nella creazione dell'utente: {conn.result}") return
# Modifica l'attributo pwdLastSet per forzare il cambio della password al prossimo accesso conn.modify(user_dn, {"pwdLastSet": [(MODIFY_REPLACE, [0])]})
print(f"Utente {samaccountname} creato con successo in {ou}.") [/code] ''' Если я удалю «unicodePwd» и «userAccountControl», все будет работать нормально, а если я добавлю их, будет сгенерировано следующее исключение (вывод of conn.result): {'result': 53, 'description': 'unwillingToPerform', 'dn': '', 'message': '0000001F: SvcErr: DSID-031A12E8, проблема 5003 (WILL_NOT_PERFORM) , данные 0\n\x00', 'рефералы': нет, 'тип': 'addResponse' что я делаю не так?