4.7. アカウントポリシープラグインの属性
アカウントポリシーは、一定期間が経過すると自動的にアカウントをロックするように設定できます。これは、事前設定された期間にのみ有効な一時的なアカウントを作成したり、一定期間非アクティブであったユーザーをロックしたりするために使用できます。
Account Policy プラグイン自体は、プラグイン設定エントリーを参照する引数のみを受け入れます。
dn: cn=Account Policy Plugin,cn=plugins,cn=config ... nsslapd-pluginarg0: cn=config,cn=Account Policy Plugin,cn=plugins,cn=config
アカウントポリシー設定エントリーは、サーバー全体で、アカウントポリシーに使用する属性を定義します。ほとんどの設定では、アカウントポリシーと有効期限の評価に使用する属性を定義しますが、設定はサブツリーレベルのアカウントポリシー定義を識別するために使用するオブジェクトクラスも定義します。
dn: cn=config,cn=Account Policy Plugin,cn=plugins,cn=config objectClass: top objectClass: extensibleObject cn: config ... attributes for evaluating accounts ... alwaysRecordLogin: yes stateattrname: lastLoginTime altstateattrname: createTimestamp ... attributes for account policy entries ... specattrname: acctPolicySubentry limitattrname: accountInactivityLimit
プラグインの 1 つがグローバルで設定され、ユーザーのサブツリー内にアカウントポリシーエントリーを作成したり、これらのポリシーをサービスのクラスを介してユーザーおよびロールに適用できます。
例4.2 アカウントポリシー定義
dn: cn=AccountPolicy,dc=example,dc=com objectClass: top objectClass: ldapsubentry objectClass: extensibleObject objectClass: accountpolicy # 86400 seconds per day * 30 days = 2592000 seconds accountInactivityLimit: 2592000 cn: AccountPolicy
個々のユーザーとロールまたは CoS テンプレートの両方のエントリーには、アカウントポリシーのサブエントリーを指定できます。すべてのアカウントポリシーのサブエントリーには、有効期限ポリシーに対して追跡される作成およびログイン時間があります。
例4.3 アカウントポリシーを含むユーザーアカウント
dn: uid=scarter,ou=people,dc=example,dc=com ... lastLoginTime: 20060527001051Z acctPolicySubentry: cn=AccountPolicy,dc=example,dc=com
4.7.1. altstateattrname
アカウントの有効期限ポリシーは、アカウントのいくつかの時間基準に基づいています。たとえば、非アクティブポリシーの場合、主要な基準は最終ログイン時刻 lastLoginTime
です。ただし、アカウントにログインしたことがないユーザーなど、その属性がエントリーに存在しない場合があります。altstateattrname
属性は、サーバーが有効期限を評価するために参照する backup 属性を提供します。
パラメーター | 説明 |
---|---|
エントリー DN | cn=config,cn=Account Policy Plugin,cn=plugins,cn=config |
Valid Range | 時間ベースのエントリー属性 |
デフォルト値 | なし |
構文 | DirectoryString |
例 | altstateattrname: createTimeStamp |
4.7.2. alwaysRecordLogin
デフォルトでは、アカウントポリシーが直接適用されているエントリー (つまり、acctPolicySubentry
属性を持つエントリー) のみがログイン時間を追跡します。アカウントポリシーがサービスクラスまたはロールを通じて適用される場合、acctPolicySubentry
属性は、ユーザーエントリー自体ではなく、テンプレートまたはコンテナーエントリーにあります。
alwaysRecordLogin
属性は、すべてのエントリーが最後のログイン時間を記録するように設定します。これにより、CoS およびロールを使用してアカウントポリシーを適用できます。
パラメーター | 説明 |
---|---|
エントリー DN | cn=config,cn=Account Policy Plugin,cn=plugins,cn=config |
Valid Range | yes | no |
デフォルト値 | いいえ |
構文 | DirectoryString |
例 | alwaysRecordLogin: no |
4.7.3. alwaysRecordLoginAttr
Account Policy
プラグインは、alwaysRecordLoginAttr
パラメーターに設定された属性名を使用して、ユーザーのディレクトリーエントリーに最後に成功したログインの時間を保存します。詳細は、Directory Server 管理ガイドの該当するセクションを参照してください。
パラメーター | 説明 |
---|---|
エントリー DN | cn=config,cn=Account Policy Plugin,cn=plugins,cn=config |
Valid Range | 有効な属性名 |
デフォルト値 | stateAttrName |
構文 | DirectoryString |
例 | alwaysRecordLoginAttr: lastLoginTime |
4.7.4. limitattrname
ユーザーディレクトリーのアカウントポリシーエントリーは、アカウントロックアウトポリシーの時間制限を定義します。この時間制限は任意のタイムベースの属性で設定でき、ポリシーエントリーには ti に複数の時間ベースの属性を含めることができます。アカウントの非アクティブ化制限に使用するポリシー内の属性は、Account Policy プラグインの limitattrname
属性で定義され、すべてのアカウントポリシーにグローバルに適用されます。
パラメーター | 説明 |
---|---|
エントリー DN | cn=config,cn=Account Policy Plugin,cn=plugins,cn=config |
Valid Range | 時間ベースのエントリー属性 |
デフォルト値 | なし |
構文 | DirectoryString |
例 | limitattrname: accountInactivityLimit |
4.7.5. specattrname
アカウントポリシーには、プラグイン設定エントリーのグローバル設定と、ユーザーディレクトリー内のエントリーの yser- または subtree-level の設定という 2 つの設定エントリーがあります。アカウントポリシーはユーザーエントリーに直接設定することも、CoS またはロール設定の一部として設定することもできます。プラグインがアカウントポリシー設定エントリーであるエントリーを識別する方法は、アカウントポリシーとしてフラグを立てるエントリーの特定の属性を識別することです。プラグイン設定のこの属性は specattrname
です。通常は acctPolicySubentry
に設定されます。
パラメーター | 説明 |
---|---|
エントリー DN | cn=config,cn=Account Policy Plugin,cn=plugins,cn=config |
Valid Range | 時間ベースのエントリー属性 |
デフォルト値 | なし |
構文 | DirectoryString |
例 | specattrname: acctPolicySubentry |
4.7.6. stateattrname
アカウントの有効期限ポリシーは、アカウントのいくつかの時間基準に基づいています。たとえば、非アクティブポリシーの場合、主要な基準は最終ログイン時刻 lastLoginTime
です。アカウントポリシーの評価に使用される主な時間属性は、stateattrname
属性に設定されます。
パラメーター | 説明 |
---|---|
エントリー DN | cn=config,cn=Account Policy Plugin,cn=plugins,cn=config |
Valid Range | 時間ベースのエントリー属性 |
デフォルト値 | なし |
構文 | DirectoryString |
例 | stateattrname: lastLoginTime |