△ 図をクリックすると拡大されます
図1●Active Directoryではドメインに所属するマシンにグループ・ポリシーを使ってパスワードの長さなどの必要条件を強制できる
Q

新規にWindows 2000をインストールし,ワークグループ環境を構成して使っていました。その後,全社のActive Directoryドメインにメンバーとして参加させて使っています。Active Directoryではユーザー・アカウントのパスワードを集中制御し,[アカウントポリシー]や[パスワードのポリシー]を細かく設定してセキュリティを高めています。特にパスワードには気を使っており,有効期限,パスワードの長さ,複雑さ,といった項目を細かくグループ・ポリシーで制御しています(図1)。

 しかし,通常はドメイン・ユーザーでログオンしているために気がつきませんでしたが,ローカル・ユーザーとして登録されているビルトイン・アカウントのAdministratorに関してはドメインで設定したパスワードの制約が効いていないようです。複雑さや長さの条件を満たしていない,以前に使っていた簡単なパスワードで有効期限を過ぎてもログオンできてしまいます。どうしてなのでしょう?


A

ドメインに所属しているマシンでは通常,ローカル・ユーザーに対してもドメインのアカウント・ポリシーおよびパスワードのポリシーは適用されます。例えば,ドメインのパスワードのポリシーで[パスワードの長さ]を「8文字以上」と設定していると,たとえローカル・ユーザーのアカウントであっても7文字以下のパスワードを設定することはできません。同様に,パスワードの長さ以外の有効期間や複雑さといった条件についても,ドメインのパスワードのポリシーで設定されコンピュータに適用されている設定値に準拠している必要があります。


△ 図をクリックすると拡大されます
図2●ドメインにアカウント・ポリシーやパスワードのポリシーが設定されていると,ドメインに所属しているマシンのローカルに設定したポリシーは上書きされる

 ドメインに設定したパスワードのポリシーはローカル・セキュリティ・ポリシーを上書きします。そのため,ローカル・セキュリティ・ポリシーで設定した内容はワークグループで運用している場合に適用され,ドメインのポリシーが設定してある場合は無視されます。例えば,[パスワードの有効期間]としてローカル・セキュリティ・ポリシーでは「42日」と設定しても,ドメインのポリシーが「90日」となっていれば,そちらが適用されます。これは,ローカル・セキュリティ・ポリシーの画面で実際に適用される[有効な設定]を見て確認できます(図2


無期限パスワードのユーザーに注意
 しかし,ドメインに参加する前に作成されていて,かつパスワードが無期限になっているユーザー・アカウントに関しては例外です。実はこういったアカウントに関しては,ドメインのポリシーを無視してしまいます。


△ 図をクリックすると拡大されます
図3●ローカル・ユーザー・アカウントのプロパティにある[パスワードを無期限にする]という設定を有効にするとドメインのアカウント・ポリシーが適用されない

 アカウントのプロパティ画面(図3)で[パスワードを無期限にする]が有効になっているユーザーは特例的に,ドメインのグループ・ポリシーやローカルのセキュリティ・ポリシーで[パスワードの有効期限]が設定されていても,パスワードの変更を強制されません。

 また,各コンピュータとユーザーに適用されたパスワードのポリシーは,常に確認されているわけではありません。[パスワードの長さ],[パスワードは要求する複雑さを満たす]などの設定はパスワードの変更時にのみチェックしています。

 そのため,ドメインに参加する前に簡単なパスワードを設定していて,[パスワードを無期限にする]が有効なユーザー・アカウントは,パスワードのポリシーを制御しているActiveDirectory環境に参加しても,ドメインの設定を無視してしまうのです。

 もちろん,これらローカル・ユーザーのパスワードを変更しようとした場合に,ドメインのパスワードのポリシーに準拠していない設定をすることはできません。しかし,いったんワークグループに戻し,パスワードを簡単なものに変更してから再度ドメインに参加させれば,やはり条件を満たさないパスワードのままアカウントを使うことが可能です。

 今回の場合,ローカルのビルトインAdministratorアカウントはドメインの参加前に作成されています。そのため,[パスワードを無期限にする]という設定が有効になっていると,設定したパスワードが簡単なままでも,ドメインに所属した後にパスワードの変更を強制されることはありません。

ログオン・スクリプトなどを利用
 ビルトインAdministratorのアカウントなど,ドメインに参加する前に作成されたローカル・ユーザーのパスワードについてもきちんと制御したい場合は,グループ・ポリシー以外の方法を使う必要があります。例えば,ログオン・スクリプトなどに,ローカル・ユーザーのパスワードをチェックするようなスクリプトを登録するなどの方法がよいでしょう。基準を満たしていない場合は,強制変更させるようにしておけば,簡単なパスワードを使い続ける危険を防げます。

瀧澤 俊臣