4.3. キーストーンによる認証

OpenStack Identity サービス (keystone) に必要な認証セキュリティー要件を調整できます。

Red Hat OpenStack Platform (RHOSP) をデプロイすると、サービス用に生成されるデフォルトのパスワードよりも複雑なパスワード要件を指定できます。これが発生すると、サービスは認証できず、デプロイは失敗します。

最初に、パスワードの複雑さの要件なしで RHOSP をデプロイする必要があります。デプロイが完了したら、KeystonePasswordRegex パラメーターをテンプレートに追加し、デプロイを再実行します。

環境を強化するには、組織の基準を満たすパスワードの複雑性の要件を実装します。NIST が推奨するパスワードの複雑性の要件については、Publication 88-63B、Appendix A を参照してください。

パラメーター

説明

KeystoneChangePasswordUponFirstUse

このオプションを有効にすると、ユーザーの作成時や、管理者がパスワードをリセットした場合に、ユーザーによるパスワードの変更が必要となります。

KeystoneDisableUserAccountDaysInactive

ユーザーが認証なしでアカウントを使用し続けることのできる最大日数。この期間が過ぎるとアカウントは非アクティブと見なされて自動的に無効 (ロック状態) になります。

KeystoneLockoutDuration

認証の最大試行回数 (KeystoneLockoutFailureAttempts で指定) を超過した場合にユーザーアカウントがロックされる秒数

KeystoneLockoutFailureAttempts

ユーザーの認証失敗がこの最大回数を超えると、KeystoneLockoutDuration で指定された秒数の期間ユーザーアカウントがロックされます。

KeystoneMinimumPasswordAge

ユーザーがパスワードを変更できるようになるまで、そのパスワードを使用する必要のある日数。これは、パスワードの履歴を消去して古いパスワードを再利用するためにユーザーがパスワードを直ちに変更するのを防ぎます。

KeystonePasswordExpiresDays

ユーザーにパスワードの変更を要求する前に、パスワードが有効と見なされる日数。

KeystonePasswordRegex

パスワードの強度要件を検証するために使用される正規表現。

KeystonePasswordRegexDescription

人が判読できる言語でパスワードの正規表現を記述してください。

KeystoneUniqueLastPasswordCount

これにより、新たに作成されたパスワードが一意であることを強制するために、履歴に保管する以前のユーザーパスワードのイテレーション数が制御されます。

4.3.1. Identity サービスの heat パラメーターを使用した無効なログイン試行阻止

ログイン試行の失敗が繰り返される場合は、ブルートフォース攻撃が試みられている可能性があります。ログインに何度も失敗した場合、Identity Service を使用してアカウントへのアクセスを制限できます。

手順

  1. ユーザーアカウントがロックされる前にユーザーが認証に失敗できる最大回数を設定するには、環境ファイルで KeystoneLockoutFailureAttempts および KeystoneLockoutDuration heat パラメーターの値を設定します。次の例では、KeystoneLockoutDuration が 1 時間に設定されています。

    parameter_defaults
        KeystoneLockoutDuration: 3600
        KeystoneLockoutFailureAttempts: 3
  2. 環境ファイルをデプロイスクリプトに追加します。以前にデプロイされた環境でデプロイスクリプトを実行すると、追加のパラメーターで更新されます。

    openstack overcloud deploy --templates \
    ...
    -e keystone_config.yaml
    ...