web-dev-qa-db-ja.com

pwpolicyが非推奨のMacOS X Server YosemiteでCLIからユーザーアカウントを無効にするにはどうすればよいですか?

Mac OS X Yosemiteより前は、管理者は以下のpwpolicyコマンドを利用してOpenDirectoryユーザーを無効にすることができました。

pwpolicy -a diradmin -p password -u username -disableuser  

または

pwpolicy -a diradmin -p password -u username -setpolicy 'isdisabled=1'

ただし、Yosemiteに更新してから、ユーザーはこれらの設定で実際に無効になることはなく、MANページで非推奨になります。ターミナルは正常に処理されますが、サーバー管理GUIには引き続き表示されます。ユーザーはアクティブであり、共有ファイルに引き続きアクセスできます。

Pwpolicyのマニュアルページによると、「アカウントポリシー」は、 http://www.manpagez.com/man/8/pwpolicy/ にあるさまざまな非推奨のpwpolicyコマンドの代わりになります。しかし、私はフォーマットを解読するのに少し苦労しています。ユーザーを無効にする必要がありますが、正しいキーワード設定が見つかりません。

誰か経験や提案はありますか?

ありがとう!

2
FKICK

El Capitanでは、これを使用できます。

pwpolicy -u target -disableuser

逆にするには

pwpolicy -u target -enableuser
1
jbruni

私はこれを自分で掘り下げようとしています。

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>

時間は、1970年1月1日00:00からの「Unix時間」秒単位です。

長さ、有効期限、複雑さの設定に関心があります。このマシンでパスワードを変更できるようにしたいので、Apppleに移動して、何がわかるかを確認します。ポリシーに一致しないため、試行したものはすべて拒否されます。

0
Ruth Ann