gpt4 book ai didi

python - 使用 python 创建 ladp 目录的条目

转载 作者:行者123 更新时间:2023-11-30 00:07:01 25 4
gpt4 key购买 nike

我正在尝试使用 python 创建 LDAP 条目,它给了我错误 {'info': '没有全局高级知识', 'desc': '服务器不愿意执行'}以下是我的代码

import ldap
import ldap.modlist as modlist
fname="dayanand"
lname="dayanand"
username="dayanand"
employee_num='102'
domain="gmail.com"
base_dn="xyz"
l = ldap.initialize("ldap://localhost")
l.simple_bind_s("cn=admin,dc=somnath,dc=zankar,dc=org","zankar")
user_dn = "cn=admin,dc=somnath,dc=org"
user_attrs = {}
#user_attrs['objectClass'] = \
# ['top', 'person', 'organizationalPerson', 'user']
user_attrs['cn'] = fname + ' ' + lname
#user_attrs['userPrincipalName'] = username + '@' + domain
#user_attrs['sAMAccountName'] = username
user_attrs['givenName'] = fname
user_attrs['sn'] = lname
user_attrs['displayName'] = fname + ' ' + lname
#user_attrs['userAccountControl'] = '514'
user_attrs['mail'] = username + '@host.com'
#user_attrs['employeeID'] = employee_num
user_attrs['homeDirectory'] = '\\\\server\\' + username
#user_attrs['homeDrive'] = 'H:'
#user_attrs['scriptPath'] = 'logon.vbs'
user_ldif = modlist.addModlist(user_attrs)

# Convert our dict to nice syntax for the add-function using modlist-module
ldif = modlist.addModlist(user_attrs)

# Do the actual synchronous add-operation to the ldapserver
try:
l.add_s(user_dn,ldif)
except ldap.LDAPError, error_message:
print "Error adding new user: %s" % error_message

最佳答案

您的 LDAP 实例中的目录树是什么样的?我问这个问题是因为您正在尝试绑定(bind)到 dc=somnath,dc=zankar,dc=org:

l.simple_bind_s("cn=admin,dc=somnath,dc=zankar,dc=org","zankar")

但是您正在尝试向 dc=somnath,dc=org 添加一些内容:

user_dn = "cn=admin,dc=somnath,dc=org"

当您尝试将条目添加到不存在的目录部分时,会出现错误“没有全局高级知识”。

您可以创建 dc=somnath,dc=org 的新基本 DN,或尝试向 dc=somnath,dc=zanker,dc=org 添加条目。 注意尝试添加一个不是 cn=admin 的条目,因为它可能已经存在,因为您正在使用它来 bind() 到服务。

关于python - 使用 python 创建 ladp 目录的条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24445858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com