json2ldap.py now works
This commit is contained in:
parent
ece64631a7
commit
e64bcd1fac
1 changed files with 11 additions and 4 deletions
15
json2ldap.py
15
json2ldap.py
|
@ -1,9 +1,12 @@
|
|||
import json
|
||||
from ldap3 import Server, Connection, ALL
|
||||
|
||||
basedn = 'dc=nantes,dc=omero-fbi,dc=fr'
|
||||
usersdn = 'cn=users,'+basedn
|
||||
|
||||
serv = Server('10.54.3.60', get_info=ALL) # define an unsecure LDAP server, requesting info on DSE and schema
|
||||
|
||||
conn = Connection(s, user='cn=admin,dc=nantes,dc=omero-fbi,dc=fr', password='Jps55Sk8An9y2nVL')
|
||||
conn = Connection(serv, user='cn=admin,dc=nantes,dc=omero-fbi,dc=fr', password='Jps55Sk8An9y2nVL')
|
||||
|
||||
if not conn.bind():
|
||||
print('error in bind', conn.result)
|
||||
|
@ -13,16 +16,20 @@ data_file="user.json"
|
|||
with open(data_file, "r") as file:
|
||||
json_user = json.load(file)
|
||||
|
||||
ldap_user_dn = json_user["dn"]
|
||||
|
||||
ldap_full_username = json_user["params"]["attributes"]["uid"]
|
||||
ldap_full_passwd = json_user["params"]["attributes"]["userPassword"]
|
||||
ldap_givenname = json_user["params"]["attributes"]["givenName"]
|
||||
ldap_surname = json_user["params"]["attributes"]["sn"]
|
||||
ldap_cn = json_user["params"]["attributes"]["cn"]
|
||||
ldap_homedir = json_user["params"]["attributes"]["homeDirectory"]
|
||||
ldap_mail = json_user["params"]["attributes"]["mail"]
|
||||
ldap_uid_number = json_user["params"]["attributes"]["uidNumber"]
|
||||
ldap_gid_number = json_user["params"]["attributes"]["gidNumber"]
|
||||
ldap_user_dn = 'uid=' + ldap_full_username + ',' + usersdn
|
||||
|
||||
conn.add(ldap_user_dn, ['inetOrgPerson', 'posixAccount', 'person', 'top'], {'sn': ldap_surname, 'gidNumber': ldap_gid_number, 'uidNumber': ldap_uid_number}, 'mail': ldap_mail, 'homeDirectory': ldap_homedir, 'userPassword': ldap_full_passwd, 'givenName': ldap_givenname, 'uid': ldap_full_username)
|
||||
conn.add(ldap_user_dn, ['inetOrgPerson', 'posixAccount', 'person', 'top'], {'sn': ldap_surname, 'gidNumber': ldap_gid_number, 'uidNumber': ldap_uid_number, 'mail': ldap_mail, 'homeDirectory': ldap_homedir, 'userPassword': ldap_full_passwd, 'givenName': ldap_givenname, 'uid': ldap_full_username, 'cn': ldap_cn})
|
||||
|
||||
print(conn.result)
|
||||
conn.unbind()
|
||||
|
||||
print(c.result)
|
||||
|
|
Loading…
Reference in a new issue