2017-08-25 65 views
1

我試圖通過使用Python 3與ldap3的LDAP將用戶添加到Active Directory。如何使用Python將新用戶添加到使用LDAP的組中?

目前我有這行代碼的工作並返回true:

conn.add('cn=' + uid + ',cn=Users,dc=example,dc=com', 'user', {'sAMAccountName': uid, 'userPrincipalName': uid,'givenName': fname, 'sn': sname, 'displayName': name, 'mail': uid + '@example.com'}) 

這一切確實是簡單地創建與給定參數的用戶 - 偉大的。

我當時就想分配我創建一個組的用戶,所以我增加了以下的屬性列表(也試過用member代替memberOf):

'memberOf': ['cn=My Group,cn=Users,dc=example,dc=com'] 

但這返回false和根本不創建用戶。

我認爲我做了一些錯誤,所以刪除memberOf,再次運行第一批代碼重新創建用戶。我使用Windows Server上的Active Directory用戶和計算機工具手動將組添加到用戶。我打開IDLE,設置我的連接和運行這個(減產爲了簡潔):

>>> conn.search('dc=example,dc=com', '(objectclass=person)', attributes=['memberOf']) 
>>> conn.entries 
[... 
, DN: CN=username,CN=Users,DC=example,DC=com - STATUS: Read - READ TIME: <snip> 
    memberOf: CN=My Group,CN=Users,DC=example,DC=com 
] 

這比caplitised CNDC另一個是我有什麼。我試圖利用我的資金,但也不管用。這讓我感到困惑,因爲我認爲我做的一切都是正確的。在過去的一兩個小時裏,我一直在Google上搜索並且撓撓我的腦袋。

TL;博士你如何在創建時使用Connection.add()

回答

1

在LDAP3庫分配和AD組到AD用戶存在用於將用戶添加到一個或多個組特定的方法。看看conn.extend.microsoft.add_members_to_groups(members, groups)方法。

+0

啊!完全錯過了。謝謝! –

相關問題