首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在python中使用GroupPoliciy库管理ldap3?

如何在python中使用GroupPoliciy库管理ldap3?
EN

Stack Overflow用户
提问于 2020-01-31 10:57:50
回答 1查看 351关注 0票数 2

我很难用ldap3库管理AD组策略。

例如,我正在添加新GPLink策略。我尝试添加属性[New-GPLink:[LinkEnabled]],但得到了一个错误。

请向我推荐以下与ldap3有关的要点:

  1. 如何在AD服务器中添加组策略
  2. 如何删除AD服务器中的组策略
  3. 如何修改AD服务器中的组策略
  4. 可以使用ldap3库

G 212调度安装和卸载操作

尝试过的东西:

添加connection

  • Search用户

  • 添加GroupPolicy属性.

代码:

代码语言:javascript
复制
from ldap3 import Server, Connection, ALL, ALL_OPERATIONAL_ATTRIBUTES, ALL_ATTRIBUTES, ObjectDef, Reader
server = Server("192.168.1.28", get_info=ALL)
admin_username = 'lab\\administrator'
admin_password = 'A1B1C1$'
conn = Connection(server, user=admin_username, password=admin_password, auto_bind=True)
search_base = 'dc=lab,dc=com'
search_filter = '(userPrincipalName=shakti@lab.com)'
conn.bind()
conn.search(search_base=search_base, search_filter=search_filter, attributes=attributes_groups)
new_attribute = 'New-GPLink'
d_n = 'CN=shakti,DC=lab,DC=com'
conn.add(dn=d_n,object_class='user',attributes=new_attribute)

降至误差以下

代码语言:javascript
复制
TypeError                                 Traceback (most recent call last)
<ipython-input-292-425b72018c42> in <module>
----> 1 conn.add(dn=d_n,object_class='user',attributes=new_attribute)

c:\users\ankit.g\appdata\local\programs\python\python36\lib\site-packages\ldap3\core\connection.py in add(self, dn, object_class, attributes, controls)
    910 
    911             attr_object_class = [to_unicode(object_class) for object_class in attr_object_class]  # converts objectclass to unicode in case of bytes value
--> 912             _attributes[object_class_attr_name] = reduce(lambda x, y: x + [y] if y not in x else x, parm_object_class + attr_object_class, [])  # remove duplicate ObjectClasses
    913 
    914             if not _attributes[object_class_attr_name]:

TypeError: 'str' object does not support item assignment
EN

回答 1

Stack Overflow用户

发布于 2020-02-01 07:42:08

问题是attributes应该是字典,而不是字符串。

attributes:{‘attr2 1’:‘val1’,‘attr2 2’:‘val2’,…形式的字典}或{‘attr1 1’:‘val1’,‘val2’,…,…}用于多值属性

我不确定属性命名以及需要设置的确切值,但错误只是格式(也可能类似于{'gpLinkStatus': 1}),例如。

代码语言:javascript
复制
conn.add(dn=d_n,object_class='user',attributes={'New-GPLink':<value>})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60002558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档