Created
February 14, 2023 16:24
-
-
Save eversinc33/0ddb5a7bc9c46d3f04f1566ecffdabc1 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import ldap3, json | |
from ldap3.extend.microsoft.addMembersToGroups import ad_add_members_to_groups | |
domain = "test.local" | |
dc_host = "dc.test.local" | |
domain_cn = "".join([f"DC={x}," for x in domain.split('.')])[:-1] | |
bind_dn = <DN TO BIND> | |
bind_pw = "Winter2023!" | |
user_dn = <DN FOR USER TO ADD> | |
group_dn = <GROUP TO ADD USER TO> | |
user_to_add_sAMAccountName = <SAMACCOUNTNAME OF USER TO ADD> | |
# setup connection | |
server = Server(dc_host, port=636, use_ssl=True) | |
conn = Connection(server, bind_dn, bind_pw, auto_bind=True) | |
# add user | |
ad_add_members_to_groups(conn, user_dn, group_dn) | |
# verify membership | |
conn.search(domain_cn, f"(&(objectclass=user)(sAMAccountName={user_to_add_sAMAccountName}))", attributes=['memberOf']) | |
response = json.loads(conn.response_to_json()) | |
print(response) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment