パスワードポリシーの設定方法 – 概要とガイド
パスワードポリシーにより、ユーザーパスワードが強固であり定期的に変更されるようにし、攻撃者がパスワードを解読することが極めて不可能になります。
アクティブディレクトリドメイン内のユーザーアカウントの高いセキュリティレベルを保証するため、管理者はドメインパスワードポリシーを設定し実装しなければなりません。パスワードポリシーは十分な複雑さ、パスワードの長さ、ユーザーおよびサービスアカウントのパスワードを変更する頻度を提供すべきです。これにより、ネットワーク経由でユーザーパスワードを送信する際、攻撃者がブルートフォース攻撃やパスワードの窃取を困難にすることができます。
アクティブディレクトリのデフォルトパスワードポリシーとは
デフォルトでは、アクティブディレクトリはデフォルトドメインパスワードポリシーで設定されています。このポリシーはアクティブディレクトリユーザーアカウントのパスワード要件を定義しており、パスワードの長さ、使用期間などが含まれます。
本パスワードポリシーはグループポリシーにより設定され、ドメインのルートにリンクしています。デフォルトのパスワードポリシーは2つの方法のいずれかで確認できます。
-
GPMCを使用する
-
PowerShellスクリプトを使用する
GPMCの使用
-
スタートメニュー → 管理ツール → グループポリシー管理へ移動します。
-
コンソールツリーで、フォレストを展開し、次にドメインを展開します。アカウントポリシーを設定するドメインを選択します。
-
ドメインをダブルクリックすると、ドメインにリンクされているGPOが表示されます。
-
デフォルトドメインポリシーを右クリックして「編集」を選択します。グループポリシーエディタコンソールが開きます。
-
次に、コンピュータ設定 → ポリシー → Windowsの設定 → セキュリティ設定 → アカウントポリシー → パスワードポリシーへと進みます。
-
パスワードポリシーをダブルクリックすると、ADで利用可能な6つのパスワード設定が表示されます。いずれかの設定を右クリックして「プロパティ」を選択し、ポリシー設定を定義します。
-
各ポリシー設定のプロパティダイアログボックスには2つのタブがあります。セキュリティポリシー設定タブでその設定の値が設定されます。説明タブにはポリシー設定とそのデフォルト値の簡単な説明があります。
-
セキュリティポリシーティ設定タブで、「このポリシー設定を定義する」チェックボックスをオンにして希望の値を入力します。「適用」をクリックしてから「OK」をクリックします。
PowerShellスクリプトの使用
このコマンドを使用して、PowerShellを使ってデフォルトのパスワードポリシーを表示することもできます。
Get-ADDefaultDomainPasswordPolicy
パスワードポリシーの設定を理解する
これまでに、ポリシーの表示と変更方法を見てきましたが、デフォルト設定の意味を知っておく必要があります。それによって必要な変更を行うことができます。それでは、設定を一つずつ見ていきましょう。
パスワード履歴の強制
この設定は、古いパスワードを再利用する前に設定する必要がある新しいパスワードの数を決定します。これにより、ユーザーが古いパスワードを継続して使用することが防止され、最小パスワード期間ポリシーが無意味になることがありません。その値は0から24の間で設定できます。ドメインコントローラーではデフォルト値が24、スタンドアロンサーバーでは0です。
例えば、パスワード履歴の強制の値を10に設定した場合、パスワードの有効期限が切れるたびに、ユーザーは異なる10のパスワードを設定し、古いパスワードを再利用することができます。
値を0に設定すると、パスワード履歴は記憶されず、パスワード有効期限後にユーザーが古いパスワードを再利用することができます。
最大パスワード期間
この設定は、パスワードを使用できる最大日数を決定します。最大パスワード期間が経過すると、ユーザーはパスワードを変更する必要があります。これはユーザーがずっと同じパスワードを使用しないようにするためです。その値は0から999日の間で設定できます。デフォルト値は42です。
例えば、最大パスワード期間の値を60に設定した場合、ユーザーは60日ごとにパスワードを変更しなければなりません。
値を0に設定すると、パスワードの有効期限はなくなり、ユーザーは一度もパスワードを変更する必要はありません。
最小パスワード期間
この設定は、パスワードが変更される前に使用されなければならない最小日数を決定します。最小パスワード期間が経過した後でなければ、ユーザーはパスワードを変更することはできません。これにより、ユーザーが頻繁にパスワードを変更することが防止されます。その値は0から999日の間で設定できます。ドメインコントローラーではデフォルト値が1で、スタンドアロンサーバーでは0です。
例えば、最小パスワード期間を10に設定した場合、ユーザーは最後のパスワード変更から10日間新しいパスワードを設定することができません。
この設定は、パスワード履歴の強制の有効性を確保するために使用されます。最小パスワード期間を0に設定すると、ユーザーはパスワード履歴の強制に設定された値に達するまで、お気に入りの古いパスワードを再利用するために2分間ごとにパスワードを変更することができます。最小パスワード期間を特定の値に設定することにより、ユーザーは頻繁にパスワードを変更することができず、パスワード履歴の強制設定を無効にすることができません。
最小パスワード期間の値は常に最大パスワード期間の値よりも小さくする必要があります。
パスワードの最小文字数
この設定は、パスワードが含むべき最小の文字数を決定します。値は0から14の間に設定可能です。デフォルト値はドメインコントローラーでは7、スタンドアロンサーバーでは0です。
例えば、パスワードの最小文字数を6に設定した場合、パスワードは少なくとも6文字を含む必要があります。
0に設定されている場合は、パスワードは必要ありません。
パスワードは複雑さの要件を満たさなければなりません
この設定は、パスワードが特定の複雑さの要件を満たす必要があるかどうかを決定します。この設定が有効になっている場合、パスワードは以下の要件を満たす必要があります。
-
ユーザーのアカウント名やユーザーのフルネームの一部を含まず、連続する2文字を超えることはありません
-
パスワードは少なくとも6文字の長さです。
-
以下の4つのカテゴリーのうち、少なくとも3つから文字を含む必要があります。
- 英大文字 (A – Z)
- 英小文字 (a – z)
- 基数10の数字 (0 – 9)
- 非英数字(例:$, #, または %)
デフォルトでは、この設定はドメインコントローラーで有効になっており、スタンドアロンサーバーでは無効になっています。
パスワードを可逆暗号化を使用して格納する
このセキュリティ設定は、パスワードが可逆暗号化を使用して格納されるかどうかを決定します。パスワードが可逆暗号化を使用して格納される場合、パスワードを復号化することが容易になります。この設定は、あるアプリケーションやサービスが特定の機能を実行するためにユーザーのユーザーネームとパスワードを必要とする場合に有用です。この設定は、必要な場合にのみ有効にすべきです。デフォルトでは、この設定は無効です。
ドメインコントローラーにおける継承のブロック
ドメインコントローラー(DC)で継承がブロックされている場合、ルートドメインにリンクされたポリシーからのパスワードポリシー設定は無視されます。これは最終的に、そのGPOのパスワードポリシー設定の変更が無視され、ドメインに適用されるパスワードポリシーや以前の情報がそのまま適用されることを意味します。しかし、ドメインコントローラーに直接GPOをリンクしても効果はありません。管理者は、ドメインコントローラーのOU上でブロックされた継承を削除するか、ルートドメインでのリンクを「強制」として設定する必要があります。ポリシーがグループポリシー継承リストに表示されている限り、設定は有効になるはずです。