在 Mac OS X Yosemite 之前,管理员可以利用以下 pwpolicy 命令禁用 Open Directory 用户:
pwpolicy -a diradmin -p password -u username -disableuser
或者
pwpolicy -a diradmin -p password -u username -setpolicy 'isdisabled=1'
但是,自从升级到 Yosemite 以来,这些设置实际上并没有禁用用户,而且它们在 MAN 页面中已被弃用。终端将像成功一样处理它们,但服务器管理 GUI 仍会将用户显示为活动状态,并且他们仍将能够访问共享文件。
根据 pwpolicy 手册页,“帐户策略”是各种已弃用的 pwpolicy 命令的替代品,如下所示http://www.manpagez.com/man/8/pwpolicy/。不过,我在解读格式方面有点困难。我只需要禁用一个用户,但我找不到正确的关键字设置。
有人有经验或建议吗?
谢谢!
答案1
在 El Capitan 中,你可以使用以下命令:
pwpolicy -u target -disableuser
扭转
pwpolicy -u target -enableuser
答案2
我正要亲自深入研究这个问题。
在 Mavericks 中,你可以使用 pwpolicy 来设置项目,但要真正看到它们的存储位置,你可以使用:
dscl . -read /Users/username PasswordPolicyOptions
所以......我刚刚尝试过:
sudo dscl . -read /Users/ruthann accountPolicyData
我只得到了一个含糊的回应。所以我想我们必须
dsAttrTypeNative:accountPolicyData:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>creationTime</key>
<real>1424277729.05691</real>
<key>passwordLastSetTime</key>
<real>1424293590.9081411</real>
</dict>
</plist>
该时间以“Unix 时间”秒为单位,自 1970 年 1 月 1 日 00:00 开始。
我担心设置长度、有效期和复杂性。我将浏览 Appple 以查看我能找到什么,因为我想在这台机器上更改我的密码,但我尝试的任何操作都会被拒绝,因为它不符合政策。