Sun Java System Directory Server Enterprise Edition 6.3 管理ガイド

パスワードポリシーとワークシート

この節ではパスワードポリシー設定について説明し、要件に合うパスワードポリシーの定義に役立つワークシートを提供します。


注 –

デフォルトのパスワードポリシーを使用するには、「デフォルトのパスワードポリシーの管理」を参照してください。


パスワードポリシー設定

Directory Server でパスワードポリシーを指定する場合、オブジェクトクラス pwdPolicy(5dsoc) を含むエントリを変更するか作成します。

特定のタイプのユーザーのパスワードポリシーを定義する場合は、次のことを考慮する必要があります。

この章のあとの節で、パスワードポリシーのこれらの点の処理方法を説明します。実装を計画している各パスワードポリシーを明確にするには、「パスワードポリシーを定義するためのワークシート」を使用します。

アカウントロックアウトのポリシー

この節では、アカウントロックアウトを制御するポリシー属性について説明します。

Directory Server のアカウントとは、大まかにはユーザーのエントリとそのユーザーがディレクトリに対して操作を実行するために必要な権限を指します。各アカウントはバインド DN とユーザーパスワードに関連付けられています。侵入者がパスワードをクラックしようとしているように見える場合、Directory Server でアカウントをロックする必要があります。ロックにより、侵入者はそのアカウントを使用してバインドできなくなります。さらに、ロックにより、侵入者が攻撃を続けることができなくなります。

管理者は、ロールを共有するすべてのユーザーのアカウントを手動で非アクティブ化することもできます。手順については、「アカウントの手動でのロック」を参照してください。さらに、パスワードポリシーを指定する際に重要なことは、Directory Server が管理者の介入なしにアカウントを自動的にロックするのはどのような条件かを指定することです。

まず、バインドの失敗が著しく多く発生する場合は、Directory Server で pwdLockout(5dsat) を使用して、自動的にアカウントがロックされるように指定する必要があります。Directory Server は連続して失敗したアカウントへのバインド試行を追跡します。pwdMaxFailure(5dsat) を使用して、何回連続して失敗したら Directory Server がアカウントをロックするかを指定します。

Directory Server はパスワードポリシーに従って、厳密にアカウントをロックします。操作は完全に機械的です。アカウントは、侵入者がアカウントに対して攻撃を仕掛けようとしているためでなく、ユーザーが誤ったパスワードを入力したことによりロックされることもあります。pwdFailureCountInterval(5dsat) を使用して、失敗した試行の間隔がどれだけ空いたら Directory Server がそれまでの失敗した試行の記録を消去するかを指定できます。pwdLockoutDuration(5dsat) を使用してDirectory Server がアカウントのロックを自動的に解除するまで、ロックアウトを継続する期間を指定します。管理者は、悪意なく正当なミスをしたユーザーのアカウントのロックを解除するために介入する必要はありません。

ユーザーデータがレプリケーショントポロジにレプリケートされる場合、ロックアウト属性は、ほかのエントリデータとともにレプリケートされます。pwdIsLockoutPrioritized(5dsat) 属性のデフォルト設定は TRUE です。この設定では、ロックアウト属性の更新は高い優先順位でレプリケートされます。したがって、ユーザーが、ロックアウトされるまでにレプリカの 1 つへのバインド試行を連続して失敗できるのは、pwdMaxFailure で設定された回数までです。ユーザーのバインド試行の失敗がほかのレプリカに対してもカウントされることで、全体として試行できる回数はさらに少なくなる可能性があります。ユーザーが、レプリケートされたトポロジ全体でロックアウトされるまで、pwdMaxFailure で設定された回数だけ試行できるようにする方法の詳細については、『Sun Java System Directory Server Enterprise Edition 6.3 配備計画ガイド』「グローバルアカウントロックアウトを使用した認証の防止」を参照してください。

パスワード変更のポリシー

この節では、パスワードの変更を制御するポリシーについて説明します。

多くの配備で、Directory Server はアイデンティティーデータのリポジトリになります。pwdAllowUserChange(5dsat) を有効にし、ユーザーが自身のパスワードを変更できるようにすることをお勧めします。これにより、管理者が各ユーザーのパスワードを変更する必要がなくなります。

ユーザーが自分のパスワードを変更できるようにしたら、次に必要な作業として、ユーザーがどのように自分のパスワードを変更できるかを制御することが考えられます。pwdSafeModify(5dsat) を使用して、パスワード変更の前に、ユーザーに既存のパスワードを正しく入力することを求めるように設定できます。パスワードの変更方法の例については、pwdSafeModifyTRUE の場合のコマンド行からのパスワードの変更」を参照してください。pwdInHistory(5dsat) を使用して、Directory Server が記憶するパスワード数を指定して、ユーザーがパスワードを再利用できないようにすることができます。さらに、pwdMinAge(5dsat) を設定して、ユーザーが著しく頻繁にパスワードを変更できないようにすることもできます。

管理者でも、または管理するアプリケーションでも、たいていの場合、ユーザーエントリをディレクトリに作成します。ユーザーが初めて新しいアカウントにバインドしたときに変更するユーザーパスワード値を割り当てることができます。さらに、ユーザーパスワードのリセットが必要になる場合もあります。リセット後、ユーザーは次にアカウントを使用するときにパスワードを変更する必要があります。Directory Server には、特定の属性 pwdMustChange(5dsat) があります。これを使用して、他のユーザーによってパスワード値がリセットされた後に、ユーザーがパスワードを変更する必要があるかどうかを指定することができます。

さらに、passwordRootdnMayBypassModsChecks(5dsat) を設定して、ディレクトリ管理者がパスワードを変更する場合に、ポリシーが適用されないように指定することもできます。

パスワードコンテンツのポリシー

この節では、パスワードコンテンツを制御するポリシー属性について説明します。

ディレクトリ検索で一般にパスワード値は返されませんが、攻撃者はディレクトリデータベースへのアクセス権を取得する可能性があります。そのため、パスワード値は一般に、passwordStorageScheme(5dsat) で指定した、サポートされるハッシュ形式で保存します。

さらに、pwdCheckQuality(5dsat) を設定して、パスワードが最低限のパスワード品質の定義を満たしているかをチェックすることもできます。その場合、サーバーは、パスワードが cngivenNamemailousn、または uid 属性のどの値とも一致しないことをチェックします。パスワードとこれらのいずれかの属性との比較では、大文字と小文字は区別されません。

pwdCheckQuality(5dsat) を設定して、追加のチェックを行うことができます。pwdMinLength(5dsat) を設定して、パスワードを指定した文字数以上にすることを強制できます。また、強力なパスワードチェックプラグインが有効にされている場合、Directory Server はパスワードにプラグインが使用する辞書ファイルの文字列が含まれていないことをチェックします。さらに、パスワードにさまざまなタイプの文字が適切に混在して含まれていることもチェックします。

強力なパスワードチェックを有効にするには、dsconf set-server-prop コマンドを使用します。pwd-strong-check-enabled プロパティーを使用して、プラグインを有効にし、サーバーを再起動して、変更を有効にします。パスワードに含める必要がある文字セットを指定するには、pwd-strong-check-require-charset プロパティーを使用します。pwd-strong-check-require-charset プロパティーは次の値のマスクを使用します。

lower

新しいパスワードには、小文字を含める必要があります。

upper

新しいパスワードには、大文字を含める必要があります。

digit

新しいパスワードには、数字を含める必要があります。

special

新しいパスワードには、特殊文字を含める必要があります。

any-two

新しいパスワードには、上記の 2 つ以上の文字セットから、それぞれ 1 文字以上含める必要があります。

any-three

新しいパスワードには、上記の 3 つ以上の文字セットから、それぞれ 1 文字以上含める必要があります。

pwd-strong-check-require-charset プロパティーのデフォルトの設定は lower && upper && digit && special です。

パスワード有効期限のポリシー

この節では、パスワードの有効期限を制御するポリシー属性について説明します。

ユーザーがパスワードを定期的に変更するように、Directory Server で、パスワードが特定の経過時間に達すると、有効期限が切れるように設定できます。このためには、pwdMaxAge(5dsat) を設定します。

パスワードの有効期限が切れそうであることをユーザーに通知する必要があります。バインドに使用するパスワードの有効期限が切れそうであるという警告を返すように、Directory Server を設定できます。pwdExpireWarning(5dsat) を使用して、有効期限のどれくらい前からクライアントがバインドしたときに警告を返すかを定義します。クライアントアプリケーションが警告を受け取ることに注意してください。ユーザーが直接警告を受け取るわけではありません。クライアントアプリケーションは、パスワードの有効期限が切れそうであるという警告を受け取ったら、エンドユーザーに通知する必要があります。

ユーザーが有効期限切れのパスワードで1 回以上バインドを試みることを許可するには、pwdGraceAuthNLimit(5dsat) を設定します。ユーザーは、期限内にパスワードの変更に失敗した場合でも、パスワードを変更するためにバインドできます。この猶予認証でログインした場合、パスワードの有効期限が切れていないときと同様にユーザーはすべての操作を実行できます。

Directory Server は、エントリ上のパスワードが変更されるたびに、オペレーショナル属性 pwdChangedTime(5dsat) を更新します。この結果、パスワードの有効期限を有効にすると、すでに期限の切れたパスワードは即座に無効になってしまいます。この動作が意に沿わない場合は、警告や猶予ログインを使用します。

最後の認証時間の追跡のポリシー

この節では、パスワードポリシー属性 pwdKeepLastAuthTime(5dsat) の使用について説明します。

pwdKeepLastAuthTime を設定すると、Directory Server はユーザーが認証するたびに、最後にバインドに成功した時間を追跡します。時間は、ユーザーのエントリの pwdLastAuthTime(5dsat) オペレーショナル属性に記録されます。

この操作によって、バインド操作が成功するたびに更新が追加されるため、pwdKeepLastAuthTime 機能はデフォルトで無効にされています。配備でこの機能を使用する場合は、明示的に有効にする必要があります。

パスワードポリシーを定義するためのワークシート

ワークシートは、コマンド行インタフェースまたは Directory Service Control Center (DSCC) を使用して実装するパスワードポリシーの定義に役立つように設計されています。パスワードポリシーごとに 1 つのワークシートを使用します。

パスワードポリシーエントリの DN を記録したら、各ポリシー領域の属性の設定についての決定を記録します。それらの設定の理由も記録します。

パスワードポリシーワークシート 

パスワードポリシーエントリ識別名 

dn: cn=

ポリシー領域 

属性 

ここに設定を記入してください 

ここに設定の理由を記入してください 

アカウントのロックアウト 

pwdFailureCountInterval(5dsat)

   

pwdIsLockoutPrioritized(5dsat)

           

           

pwdLockout(5dsat)

           

           

pwdLockoutDuration(5dsat)

           

           

pwdMaxFailure(5dsat)

           

           

パスワードの変更 

passwordRootdnMayBypassModsChecks(5dsat)

           

           

pwdAllowUserChange(5dsat)

           

           

pwdInHistory(5dsat)

           

           

pwdMinAge(5dsat)

           

           

pwdMustChange(5dsat)

           

           

pwdSafeModify(5dsat)

           

           

パスワードの内容 

passwordStorageScheme(5dsat)

           

           

pwdCheckQuality(5dsat)

           

           

pwdMinLength(5dsat)

   

パスワードの有効期限 

pwdExpireWarning(5dsat)

           

           

pwdGraceAuthNLimit(5dsat)

           

           

pwdMaxAge(5dsat)

           

           

最後の認証時間の追跡 

pwdKeepLastAuthTime(5dsat)

           

           


注 –

pwdCheckQuality 属性を 2 に設定すると、サーバーは追加のチェックを実行できます。パスワードチェックプラグインも有効にすると、新しいパスワードの値をチェックする際に、プラグインの設定内容も考慮されます。