OpenDJ LDAP統合リファレンス

このトピックでは、OpenDJ Lightweight Directory Access Protocol(LDAP) 統合に固有の参考情報を提供します。Okta LDAP Agentをインストールする際、OpenDJディレクトリーをOktaと統合するためにこの情報が必要になります。 Okta LDAP Agentのインストールを参照してください。

既知の問題

  • 自分のパスワードのリセットを要求し、管理者がパスワードをリセットした後、そのパスワードを変更する必要があるユーザーは、Okta End-User Dashboardにアクセスするために新しいパスワードを2回指定する必要がある。

  • プロビジョニング設定で[何もしない]と表示されている場合、ユーザーが非アクティブ化されてもOktaではアクティブなままになっている。単一のソースがユーザー・プロファイル属性を提供する場合、非アクティブ化されたユーザーはソースから切断され、Oktaがユーザー・プロファイル属性のソースになります。

統合の構成

Okta LDAP Agentのインストールに記載されているエージェントの初期インストールおよび構成時の、OpenDJ統合の属性は次のとおりです。

  • 一意の識別子属性:entryuuid
  • DN属性:entrydn
  • ユーザー・オブジェクト・クラス:inetorgperson
  • ユーザー・オブジェクト・フィルター:(objectclass=inetorgperson)
  • *アカウントで無効になっている属性:ds-pwp-account-disabled
  • *アカウントで無効になっている値:TRUE
  • *アカウントで有効になっている値:FALSE
  • パスワード属性:userpassword
  • グループ・オブジェクト・クラス:groupofuniquenames
  • グループ・オブジェクト・フィルター:(objectclass=groupofuniquenames)
  • メンバー属性:uniquemember
  • パスワード有効期限切れ属性:ds-pwp-password-expiration-time

スキーマの読み取り

OpenDJ の統合に関する、特別な考慮事項はありません。

AUXクラスの属性を追加するには、補助クラスを補助オブジェクト・クラスとしてディレクトリーのプロビジョニング構成に追加します。

パスワード変更

ユーザーは、Oktaエンド・ユーザー・ダッシュボードで[設定]を選択して、パスワードの変更をトリガーできます。

ユーザーがパスワードの変更またはリセットを行えるようにするには、[セキュリティー] > [委任認証]をクリックし、[LDAP]タブを選択してから、[ユーザーはOktaでのLDAPパスワードを変更できます] を選択します。

LDAPインスタンスでパスワードの長さや有効期限などの設定を構成できます。

失敗したパスワード更新操作はOktaによって解析され、[委任認証]ページにエラー・メッセージが表示されます。

パスワード・リセット

パスワード・リセットは、管理者またはユーザーがパスワードを忘れた場合のフローによってトリガーされます。

新しいパスワードがパスワード・ポリシーの基準を満たさない場合、パスワード・リセットが失敗する可能性があります。

ユーザーは、期限切れのパスワードを更新できません。期限切れのパスワードは、管理者がリセットする必要があります。

パスワードの検証

pwdPolicyオブジェクト・クラスを使用して、OpenDJ固有のパスワード・ポリシーを実装します。

パスワード・ポリシーにOpenDJパスワード・バリデーターを指定しない場合、パスワードの長さや使用可能な文字に関する制限はありません。

インポート

OpenDJで作成されたユーザーまたはグループは、最初のユーザー・プロファイルの変更が検出されるまで増分インポートには含まれません。

JITプロビジョニング

OpenDJジャスト・イン・タイム(JIT)プロビジョニングに関する特別な考慮事項はありません。ユーザーID(UID)は、メール形式を使用してOktaユーザー名のデフォルト設定と一致させます。サインインのトリガーに外部IDプロバイダー(IDP)を使用しないでください。

JITプロビジョニングを正常に完了するには、以下が必要です。

  • 構成された命名属性(UIDなど)の値がOktaに存在していないこと。
  • 構成された命名属性(UIDなど)の値が、JITが有効なすべてのディレクトリーで一意であること。
  • 必須属性が提示されていること。Oktaのデフォルトはemail、givenName、sn、uidです。
  • パスワードが正しいこと。
  • [アカウントで無効になっている属性]が、LDAPサーバーでfalseに設定されていること。

JITプロビジョニングが正常に完了すると、[LDAP設定]ページとプロファイル・エディターで指定されたすべてのユーザー属性がインポートされます。追加の必須属性を選択するには、プロファイル・エディターを使用します。

メンバーシップのインポート

OpenDJ 設定のユーザー・プロファイルがオブジェクト・クラスgroupofuniquenamesを使用してグループに追加され、uniquemember group属性が割り当てられます。

プロビジョニング

パスワード・ポリシーにOpenDJパスワード・バリデーターを指定しない場合、パスワードの長さや使用可能な文字に関する制限はありません。

ユーザー・プロファイルの作成時にパスワードを作成して割り当てるには、次の手順を実行します。

  1. LDAPプッシュ・パスワードの更新を有効にするには、Oktaカスタマー・サポートに連絡してください。
  2. 次の手順を実行して、委任認証を無効にします。
    1. 管理コンソールで、[セキュリティー] > に移動します [委任認証] > [LDAP]をクリックします。
    2. [委任認証]ペインで[編集]をクリックします。
    3. [LDAPへの委任認証を有効にする] チェック・ボックスをオフにします。
    4. [保存]をクリックします。
    5. デフォルト設定を受け入れてすべてのLDAPユーザー・パスワードをリセットし、[LDAP 認証を無効にする]をクリックします。
  3. 管理コンソールで、[ディレクトリー] > に移動します [ディレクトリー統合] > [LDAP] > [プロビジョニング] > [アプリへ]の順にクリックします。
  4. [編集]をクリックし、[パスワードを同期]の横にある[有効]を選択して、[保存]をクリックします。
  5. [パスワードを同期]が有効になると、LDAPエージェントはユーザーが初めてサインインする時にPASSWORD_UPDATEアクションを送信します。

既存のOktaユーザーをLDAPに割り当てるには、次の手順を実行します。

  1. 管理コンソールで、[ディレクトリー] > に移動します [ディレクトリー統合] > [LDAP] > [プロビジョニング] > [アプリへ]の順にクリックします。
  2. [編集]をクリックし、[ユーザーを作成]の横にある[有効]を選択して、[保存]をクリックします。
  3. [ディレクトリー] > [グループ]をクリックします。
  4. ユーザーを割り当てるOktaグループを選択します。
  5. [ディレクトリーを管理]をクリックします。
  6. 左側のペインでLDAPインスタンスを選択し、[次へ]をクリックします。
  7. [プロビジョニング宛先DN]フィールドに、新規ユーザーのLDAPコンテナーの完全識別名(DN)を入力します。
  8. [変更を確認]をクリックします。

トラブルシューティング

LDAPディレクトリー認証に失敗すると、診断と解決に役立つ次のようなメッセージがエージェント・ログに表示されます。

エージェント:成功

searchResultsがユーザーとグループの情報とともに送信されます

POST initiated with result status=SUCCESS, actionType=USER_AUTH_AND_UPDATE, diagnostic message=, error code=, matched dn=, message=SUCCESS, result code=, vendor=OPEN_DJ

エージェント:委任認証の失敗

POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADSv0hR8zflMGGeUY0g3, diagnostic message=, error code=49, matched dn=cn=LynxyForChange,cn=GroupForUser4Level,cn=GroupForUser3Level,cn=GroupForUser2Level,cn=GroupForUser1Level,ou=LynxySpecificUsers,ou=LynxyUsers,dc=example,dc=com, message=LDAPException(resultCode=49 (invalid credentials), errorMessage='invalid credentials'), result code=invalid credentials, vendor=OPEN_DJ

エージェント:ユーザーなし

POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADSv0bQoITDYU63b80g3, diagnostic message=, error code=, matched dn=, message=User not found while executing query: (&(objectclass=inetorgperson)(uid=test@test.com)), result code=, vendor=OPEN_DJ

エージェント:パスワードの有効期限切れ

POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADSv091Tx5GPJsUxV0g3, diagnostic message=, error code=49, matched dn=cn=LynxyForChange,cn=GroupForUser4Level,cn=GroupForUser3Level,cn=GroupForUser2Level,cn=GroupForUser1Level,ou=LynxySpecificUsers,ou=LynxyUsers,dc=example,dc=com, message=LDAPException(resultCode=49 (invalid credentials), errorMessage='invalid credentials', responseControls={PasswordExpiredControl(isCritical=false)}), result code=PASSWORD_EXPIRED, vendor=OPEN_DJ

エージェント:ロックアウトまたは無効

OpenDJには、ロックされたアカウントに対する固有のエラー・コードがありません。pwdAccountLockedTimeが現在以降の時間を示している場合、応答コードは誤ったパスワードの場合と同一になります(49(無効な認証情報))

POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADSv0pY84CfDLi2Jc0g3, diagnostic message=, error code=49, matched dn=cn=LynxyForChange,cn=GroupForUser4Level,cn=GroupForUser3Level,cn=GroupForUser2Level,cn=GroupForUser1Level,ou=LynxySpecificUsers,ou=LynxyUsers,dc=example,dc=com, message=LDAPException(resultCode=49 (invalid credentials), errorMessage='invalid credentials'), result code=invalid credentials, vendor=OPEN_DJ