20.5. 一時パスワードルールの設定
Directory Server のパスワードポリシーは、ユーザーアカウントの一時パスワードの設定をサポートしています。ユーザーに一時パスワードを割り当てると、Directory Server は、ユーザーがパスワードを変更するまで、パスワード変更以外の操作を拒否します。
一時パスワードの機能は次のとおりです。
cn=Directory Manager
アカウントのみが一時パスワードを割り当てることができます。- Directory Server は、攻撃者によるパスワードの調査を防ぐために、認証の試行を一定の回数だけ許可します。
- Directory Server は、設定直後に一時パスワードを使用できないように、指定された遅延時間後に認証の試行を許可します。
- Directory Server は、ユーザーが一時パスワードを使用またはリセットしなかった場合に一時パスワードが期限切れになるように、指定された期間のみ認証の試行を許可します。
- 認証が成功した場合、Directory Server は他の操作を実行する前に、ユーザーによるパスワードのリセットを要求します。
デフォルトでは、一時パスワードルールは無効になります。一時パスワードルールは、グローバルまたはローカルパスワードポリシーで設定できます。
20.5.1. グローバルパスワードポリシーでの一時的なパスワードルールの有効化
Directory Server インスタンス全体に対して一時パスワード機能を有効にするには、次の手順を実行します。
- 管理者がパスワードをリセットした場合にユーザーによるパスワードの変更を必須にします。
- グローバルパスワードポリシーで一時パスワード機能を設定します。
管理者がユーザーの
userPassword
属性を更新し、passwordMustChange
属性を on に設定すると、Directory Server は一時パスワード規則を適用します。
手順
- 管理者によるパスワードリセット後のユーザーによるパスワード変更を必須に設定します。
# dsconf -D "cn=Directory Manager" ldap://server.example.com pwpolicy set --pwdmustchange on
- グローバルパスワードポリシーで一時パスワードルールを設定します。
# dsconf -D "cn=Directory Manager" ldap://server.example.com pwpolicy set --pwptprmaxuse 5 --pwptprdelayexpireat 3600 --pwptprdelayvalidfrom 60
この例では、以下のように設定されています。--pwptprmaxuse
オプションは、ユーザーが一時パスワードを 5 に使用できる最大試行回数を設定します。--pwptprdelayexpireat
オプションは、一時パスワードが 3600 秒 (1 時間) で期限切れになるまでの時間を設定します。--pwptprdelayvalidfrom
オプションは、管理者がユーザーのパスワードをリセットした後に、--pwptprdelayexpireat
に設定した時間が 60 秒を起動するように設定します。
検証
- 一時パスワードルールを保存する属性を表示します。
# dsconf -D "cn=Directory Manager" ldap://server.example.com pwpolicy get | grep -i TPR passwordTPRMaxUse: 5 passwordTPRDelayExpireAt: 3600 passwordTPRDelayValidFrom: 60
20.5.2. ローカルパスワードポリシーでの一時的なパスワードルールの有効化
特定のユーザーまたはサブツリーの一時パスワード機能を有効にするには、管理者によるパスワードリセット時のユーザーによるパスワード変更を必須にして、ローカルパスワードポリシーで機能を設定します。
管理者がユーザーの
userPassword
属性を更新し、passwordMustChange
属性を on に設定すると、ユーザーが以下の場合に、Directory Server は一時パスワード規則を適用します。
- ローカルパスワードポリシーが有効になっている
- ローカルパスワードポリシーが有効になっているサブツリーに保存されている
手順
- 管理者によるパスワードリセット後のユーザーによるパスワード変更を必須に設定します。
# dsconf -D "cn=Directory Manager" ldap://server.example.com pwpolicy set --pwdmustchange on
- 一時パスワードルール設定を設定します。
- サブツリーの場合:
# dsconf -D "cn=Directory Manager" ldap://server.example.com localpwp addsubtree --pwptprmaxuse 5 --pwptprdelayexpireat 3600 --pwptprdelayvalidfrom 60 ou=People,dc=example,dc=com
- ユーザーの場合:
# dsconf -D "cn=Directory Manager" ldap://server.example.com localpwp adduser --pwptprmaxuse 5 --pwptprdelayexpireat 3600 --pwptprdelayvalidfrom 60 uid=example,ou=People,dc=example,dc=com
ローカルパスワードポリシーは、存在するエントリーにのみ設定できることに注意してください。この例では、以下のようになります。--pwptprmaxuse
オプションは、ユーザーが一時パスワードを 5 に使用できる最大試行回数を設定します。--pwptprdelayexpireat
オプションは、一時パスワードが 3600 秒 (1 時間) で期限切れになるまでの時間を設定します。-pwptprdelayvalidfrom
オプションは、管理者がユーザーのパスワードをリセットした後に、--pwptprdelayexpireat
に設定した時間が 60 秒を起動するように設定します。
検証
- 識別名 (DN) のローカルパスワードポリシーを表示します。
# dsconf -D "cn=Directory Manager" ldap://server.example.com localpwp get distinguished_name | grep -i TPR passwordTPRMaxUse: 5 passwordTPRDelayExpireAt: 3600 passwordTPRDelayValidFrom: 60