Apigee システムでは、API 管理環境で OpenLDAP を使用してユーザーを認証します。OpenLDAP では、この LDAP パスワード ポリシー機能を使用できます。
このセクションでは、提供されたデフォルトの LDAP パスワード ポリシーを構成する方法について説明します。このパスワード ポリシーを使用して、さまざまなパスワード認証オプションを構成できます。たとえば、ログインが連続して失敗すると、その回数に達すると、ディレクトリへのユーザーの認証にそのパスワードを使用できなくなります。
また、いくつかの API を使用して、デフォルトのパスワード ポリシーで構成された属性に従ってロックされたユーザー アカウントのロックを解除する方法についても説明します。
詳しくは以下をご覧ください。
デフォルトの LDAP パスワード ポリシーの構成
このセクションでは、次のデフォルトの LDAP パスワード ポリシーを構成する方法について説明します。
Edge ユーザーと元の sysadmin のデフォルト LDAP パスワード ポリシーを構成する
Edge ユーザーと元の sysadmin に対してデフォルトの LDAP パスワード ポリシーを構成するには:
- Apache Studio や ldapmodify などの LDAP クライアントを使用して LDAP サーバーに接続します。デフォルトでは、OpenLDAP サーバーは OpenLDAP ノードのポート 10389 をリッスンします。
接続するには、
cn=manager,dc=apigee,dc=com
のバインド DN またはユーザーと、Edge のインストール時に設定した OpenLDAP パスワードを指定します。 - 上記のクライアントを使用して、以下のパスワード ポリシー属性に移動します。
- Edge ユーザー:
cn=default,ou=pwpolicies,dc=apigee,dc=com
- 元の Edge システム管理者:
cn=sysadmin,ou=pwpolicies,dc=apigee,dc=com
注: 追加のシステム管理者(元のシステム管理者以外)の LDAP パスワード ポリシーを構成するには、以下の追加のシステム管理者の LDAP パスワード ポリシーの構成をご覧ください。
- Edge ユーザー:
- 必要に応じてパスワード ポリシー属性の値を編集します。
- 構成を保存します。
追加のシステム管理者向けに LDAP パスワード ポリシーを構成する
Edge に sysadmin ユーザーを追加すると、元の sysadmin の sysadmin パスワード ポリシーではなく、デフォルトのパスワード ポリシーが継承されます。デフォルトのパスワード ポリシーは、特に設定しない限り、一定期間が経過すると期限切れになります。追加の sysadmin ユーザーのパスワード ポリシーを設定して期限切れにならないようにするには、次の操作を行います。
- 次のコマンドを実行して、
dn
のすべての sysadmin を見つけます。ldapsearch -x -W -D "cn=manager,dc=apigee,dc=com" -H "ldap://:10389" -b "cn=sysadmin,ou=userroles,ou=global,dc=apigee,dc=com" -s base -LLL
出力には、sysadmin ユーザーが
roleOccupant
として表示されます。dn: cn=sysadmin,ou=userroles,ou=global,dc=apigee,dc=com objectClass: organizationalRole objectClass: top cn: sysadmin roleOccupant: uid=admin,ou=users,ou=global,dc=apigee,dc=com roleOccupant: uid=2a0056b4-5c62-49de-8fb3-925ch67a3e45,ou=users,ou=global,dc=apigee,dc=com
ppchange.ldif
という名前の新しいファイルを作成し、次のコードを追加します(独自の sysadmin ユーザーの dn に置き換えます)。dn: uid=new-sysadmin-uid,ou=users,ou=global,dc=apigee,dc=com changetype: modify add: pwdPolicySubentry pwdPolicySubentry: cn=sysadmin,ou=pwpolicies,dc=apigee,dc=com
- 次のコマンドを入力してユーザーを変更します。
ldapmodify -x -w "$ldappassword" -D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -f ppchange.ldif
ldap
検索コマンドを使用して変更を確認します。ldapsearch -x -W -D "cn=manager,dc=apigee,dc=com" -H "ldap://:10389" -b "uid=new-sysadmin-uid,ou=users,ou=global,dc=apigee,dc=com" -s base -LLL pwdPolicySubentry
出力には、
pwdPolicySubentry
が追加されたことが示されます。dn: uid=new-admin-uid,ou=users,ou=global,dc=apigee,dc=com pwdPolicySubentry: cn=sysadmin,ou=pwpolicies,dc=apigee,dc=com
- sysadmin ごとに手順 2 ~ 4 を繰り返します。
デフォルトの LDAP パスワード ポリシー属性
属性 | 説明 | デフォルト |
---|---|---|
pwdExpireWarning |
パスワードの期限切れまでの最大秒数。これに達すると、ディレクトリに対する認証を受けるユーザーに期限切れの警告メッセージが返されます。 |
604800 (7 日間相当) |
pwdFailureCountInterval |
過去のバインド試行の連続失敗回数が失敗カウンタから削除されるまでの秒数。 つまり、ログインの連続失敗回数がリセットされるまでの秒数です。
この属性は |
300 |
pwdInHistory |
ユーザーがパスワードを変更すると、過去のどのパスワードも変更できなくなります。 |
3 |
pwdLockout |
|
False |
pwdLockoutDuration |
連続ログイン失敗の最大回数を超えた場合に、そのユーザーの認証にパスワードを使用できないようにする秒数。 つまり、
ユーザー アカウントのロック解除をご覧ください。
この属性は |
300 |
pwdMaxAge |
ユーザー(システム管理者以外)のパスワードが期限切れになるまでの秒数。値を 0 にすると、パスワードは期限切れになりません。デフォルト値 2592000 は、パスワード作成時点から 30 日間です。 |
ユーザー: 2592000 システム管理者: 0 |
pwdMaxFailure |
連続して何回ログインに失敗すると、ディレクトリに対するユーザーの認証にそのパスワードを使用できなくなるようにするか。 |
3 |
pwdMinLength |
設定するパスワードの必要最小限の文字数。 |
8 |
ユーザー アカウントのロック解除
ユーザーのアカウントは、パスワード ポリシーに設定された属性に従ってロックされます。システム管理者の Apigee ロールが割り当てられたユーザーは、次の API 呼び出しを使ってユーザーのアカウントをロック解除できます。userEmail、adminEmail、password は実際の値に置き換えてください。
ユーザーのロックを解除するには:
/v1/users/userEmail/status?action=unlock -X POST -u adminEmail:password