簡體   English   中英

使用 Python ldap 模塊以編程方式啟用/禁用帳戶?

[英]Enable/Disable account programmatically using Python ldap module?

我想以編程方式啟用/禁用 LDAP 用戶帳戶。 從命令提示符我可以使用 dsutil,這顯然設置/刪除了 nsAccountLock 操作屬性。 我曾嘗試使用 modify_s() 來設置和刪除 Python 中的此屬性,但始終收到以下錯誤消息:“對條目 ''nsAccountLock' 屬性的‘寫入’權限不足”。

有沒有辦法通過 Python 以編程方式設置/刪除/添加操作屬性或以其他方式啟用/禁用 ldap 用戶?

謝謝,C

您應該使用包含一組控制位的屬性“userAccountControl”。

如果您正在管理普通用戶,要啟用用戶:

userAccountControl = 512

並禁用它:

userAccountControl = 514

通常,如果您想啟用/禁用現有用戶,您應該檢索當前值並以這種方式更新它。

userADAccountControlFlag = 2
userAccountControl = user.userAccountControl

# To enable user:
userAccountControl = userAccountControl & ~userADAccountControlFlag # (& bit-wise AND, ~ bit-wise Negate)

# To disable user:
userAccountControl = userAccountControl | userADAccountControlFlag # (| bit-wise OR)

user.userAccountControl = userAccountControl

# Then update user on ldap server

您可以在此處找到有關 userAccountControl 屬性的更多信息: http : //www.selfadsi.org/ads-attributes/user-userAccountControl.htm

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM