最近MacOS(11.6.5)を再インストールし,パスワードを再設定しようとpasswdコマンドを実行したところ,
# passwd user1
Changing password for user1.
Old password:
New password:
Retype new password:
passwd:
Password change failed because password does not meet minimum quality requirements.
とのメッセージが出てパスワードを変更することができませんでした.これは,3文字のパスワードを設定しようとしたからで,デフォルトのパスワードポリシーは3文字以下のパスワードを禁止しています.このパスワードポリシーの変更方法を説明します.
パスワードポリシーの変更手順
パスワードポリシーはpwpolicyコマンドで変更します.このコマンドでポリシーの一部を直接変更することもできますが,ネット上でよく行われている以下の手順で変更します.
- パスワードポリシーのファイルへの取得
- パスワードポリシーの編集
- パスワードポリシーの適用
パスワードポリシーのファイルへの取得
以下のコマンドを実行し,パスワードポリシーをxmlファイルに出力します.
pwpolicy getaccountpolicies > accountpolicies.xml
パスワードポリシーの編集
一行目の以下の行を削除します.
Getting global account policies
つづいて,以下の行の「4」を「3」へ変更します.
<string>policyAttributePassword matches '^$|.{4,}+'</string>
これ以外にも各言語毎にメッセージが用意されており,この中に「4」という文字が含まれています(もしくは「4」を意味するその言語の文字)が,私はそのままにしました.
パスワードポリシーの適用
以下のコマンドを実行し,パスワードポリシーをシステムに適用します.getaccountpoliciesサブオプションと違いリダイレクト記号は不要です.
pwpolicy setaccountpolicies accountpolicies.xml
これでパスワードポリシーが変更されました.これ以後のpasswdコマンドは3文字以上のパスワードが設定可能となります.システムの再起動は不要で有効になりました.
パスワード変更例
# passwd user1
Changing password for user1.
Old password:
New password:
Retype new password:
################################### WARNING ###################################
# This tool does not update the login keychain password. #
# To update it, run `security set-keychain-password` as the user in question, #
# or as root providing a path to such user's login keychain. #
###############################################################################
#
コメント