我正在尝试编写一个基于python-3的程序,它可以每天刷新一个活动目录组的成员。问题是,我有:
Security group : cn=groupName, ou=Groups, ou=department, dc=some, dc=company,dc=com
User group: ou=Users, ou=department, dc=some, dc=company, dc=com
用户加入群组的成员资格可能会根据特定条件到期。所以,我必须
我浏览了ldap3教程,但找不到与成员添加/删除相关的任何内容。
您能否告诉我任何我可以使用的python库或代码示例都会有很大的帮助。
答案 0 :(得分:0)
您需要在Active Directory服务器上启用LDAP。
然后你应该可以使用Python ldap3
做你想做的事,没问题。
在那里查看ldap3.Connection.extend.microsoft
,您会找到两种方法:add_members_to_groups()
和remove_members_from_groups()
。
他们的用法记录在案here。
让你入门的东西:
import ldap3
server = ldap3.Server('ldap.example.com')
conn = ldap3.Connection(server, user='user', password='password', auto_bind=True)
conn.add('cn=jsmith,cn=Users,dc=example,dc=com', 'user', {'sAMAccountName': 'jsmith', 'userPrincipalName': 'jsmith', 'givenName': 'John', 'sn': 'Smith'})
conn.extend.microsoft.add_members_to_groups('cn=jsmith,cn=Users,dc=example,dc=com', 'cn=My Group,cn=Users,dc=example,dc=com')
conn.unbind()
所有这一切都是创建用户并将其添加到组中。
答案 1 :(得分:0)
我能够使用Pyad库成功将用户添加到AD组。完整的文档可以在here中找到。下面是将用户列表添加到广告组的示例。
from pyad import aduser
from pyad import adgroup
## Set AD Group Values (values derived from CN or Common Name of the AD Group)
test_group = "xxxxx-YYYYY-TEST-ZZZZ"
## Create List of Code IDs to be added
code_list = ["123456", "234567", "345678"]
## Add Users to TEST AD Group using the Pyad library
for user in code_list:
users = aduser.ADUser.from_cn(user)
test_group = adgroup.ADGroup.from_cn(test_group)
test_group.add_members(users)