OpenLDAP LDAP 統合リファレンス

このトピックは、OpenLDAP Lightweight Directory Access Protocol (LDAP) の統合に固有のリファレンス情報を提供します。Okta LDAP エージェントをインストールする際に、この情報を使用してOpenLDAPディレクトリとOktaを統合する必要があります。Okta LDAP エージェントのインストールを参照してください。

推奨されるバージョン

OpenLDAP 2.4.44-22.amzn2

既知の問題

  • 一時パスワードを使用しているユーザーには、新しいパスワードを作成するプロンプトは表示されません。
  • 期限切れのパスワードでOkta End-User Dashboardにサインインしようとしたユーザーには、「Unable to sign in (サインインできません)」というメッセージは表示されますが、「Password expired (パスワード期限切れ)」のエラーメッセージは表示されません。
  • セルフパスワードのリセットを要求しているユーザーが、管理者がパスワードをリセットした後でパスワードを変更する必要がある場合、Oktaエンドユーザーダッシュボードにアクセスするために新しいパスワードを2回入力する必要があります。

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

統合構成

Okta LDAP エージェントのインストールに記載されているエージェントの初回インストールと構成の際に、これらはOpenLDAP統合時の属性となります。

  • 一意の識別子の属性 — entryuuid
  • DN属性 — entrydn
  • ユーザー オブジェクト クラス— inetorgperson
  • ユーザー オブジェクト フィルター ― (objectclass=inetorgperson)
  • アカウントで無効になっている属性― pwdlockout
  • *アカウントで無効になっている値 - TRUE
  • *アカウントで有効になっている値 - FALSE
  • パスワード属性 - userpassword
  • グループ オブジェクト クラス - groupofuniquenames
  • グループ オブジェクト フィルター - (objectclass=groupofuniquenames)
  • メンバー属性 — uniquemember

スキーマ読み出し

OpenLDAP 統合のための特別な考慮事項はありません。

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

パスワード変更

ユーザーはOktaエンドユーザー ダッシュボードで[Settings(設定)]を選択することでパスワード変更をトリガーできます。

ユーザーがパスワードを変更またはリセットできるようにするには、[Security (セキュリティ)]>[Delegated Authentication (代理認証)]をクリックし、[LDAP]タブを選択して、[Users can change their LDAP passwords in Okta (ユーザーはOktaでのLDAPパスワードを変更できます)] を選択します。

パスワード リセット

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

新規パスワードがパスワード ポリシーの条件を満たさない場合、パスワード リセットは失敗します。

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

パスワード検証

OpenLDAP固有のパスワードポリシーを実装するには、pwdPolicyオブジェクトクラスとpwdPolicySubentry属性を使用します。

インポート

OpenLDAP LDAP 統合のための特別な考慮事項はありません。

JITプロビジョニング

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

初めての場合でも、JITプロビジョニングが額実に実行されるように確認するには

  • 設定された名付け属性(UIDなど)の値がOktaに存在しないこと
  • 設定された名付け属性(UIDなど)の値がJIT対応のディレクトリで一意であること
  • 必要な属性が存在していることOktaデフォルト値はメール、givenName、sn、およびuidです。
  • パスワードが正しい値でなければなりません。
  • アカウント無効化属性がLDAPサーバーでfalseに設定されている必要があります。

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

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

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

インポート中、メンバーシップ属性がseeAlsoに設定されると、ユーザーはseeAlsoユーザー属性に追加されたグループに割り当てられます。

プロビジョニング

ユーザーの作成や割り当て時にパスワードを設定できるようにするには、DelAuthを無効にし、LDAP_PUSH_PASSWORD_UPDATESを有効にし、LDAPインスタンスのパスワード同期を有効にしてください。これらの設定では、LDAPエージェントは、ユーザーが初めてログインしたときや、割り当てられたときにPASSWORD_UPDATEアクションを送信します。これらの設定を行わない場合、パスワードはLDAPインスタンスに転送されません。

ユーザー プロファイルを作成する際にパスワードを作成して割り当てるには

  1. Oktaカスタマーサポートに連絡してLDAPプッシュ パスワードのアップデートを有効化します。
  2. 代理認証を無効化します。
    1. 管理コンソールで、[セキュリティー] > に移動します [Delegated Authentication(代理認証)]>[LDAP]に進みます。
    2. [Delegated Authentication(代理認証)]ペインで[Edit(編集)]をクリックします。
    3. [Enable delegated authentication to LDAP(LDAPの代理認証を有効化)] チェック ボックスをオフにします。
    4. [Save(保存)]をクリックします。
    5. デフォルト設定を受け入れ、すべてのLDAP ユーザーパスワードをリセットし、[Disable LDAP Authentication(LDAP認証を無効化)]をクリックします。
  3. 管理コンソールで、[ディレクトリー] > に移動します [Directory Integrations(ディレクトリ統合)]>[LDAP]>[Provisioning(プロビジョニング)]>[To App(アプリへ)]に進みます。
  4. [Edit(編集)][Sync Password(パスワードを同期化)]の隣の[Enable(有効化)][Save(保存)]の順にクリックします。
  5. [Sync Password(パスワードを同期化)]を有効にすると、ユーザーが初めてサインインしたときにLDAPエージェントはアクションPASSWORD_UPDATEを送信します。

既存のOktaユーザーをLDAPに割り当てるには

  1. 管理コンソールで、[ディレクトリー] > に移動します [Directory Integrations(ディレクトリ統合)]>[LDAP]>[Provisioning(プロビジョニング)]>[To App(アプリへ)]に進みます。
  2. [Edit(編集)]をクリックし、[Create Users(ユーザーの作成)]の隣にある[Enable(有効化)]を選択して[Save(保存)]をクリックします。
  3. [Directory(ディレクトリ)]>[Groups(グループ)]をクリックします。
  4. ユーザーの割り当て先となるOktaグループを選択します。
  5. [Manage Directories(ディレクトリを管理)]をクリックします。
  6. 左ペインでLDAPインスタンスを選択し、[Next(次へ)]をクリックします。
  7. [Provisioning Destination DN(プロビジョニング先のDN)]フィールドに新規ユーザーLDAPコンテナの完全識別名を入力します。
  8. [Confirm Changes(変更を確定)]をクリックします。

トラブルシューティング

LDAP ディレクトリ認証が失敗した場合、エージェントは診断と解決に役立てるために以下のような画面メッセージを記録します。

Agent: Success (成功)

scanResults are sent with user+group info

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

Agent:Delauth failure(代理認証が失敗)

POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADStftCWoSunnemFU0g3, diagnostic message=, error code=49, matched dn=cn=PasswordPolicyUser,ou=LynxyUsers,dc=okta-openldap,dc=com, message=LDAPException(resultCode=49 (invalid credentials), errorMessage='invalid credentials'), result code=invalid credentials, vendor=OPEN_LDAP

Agent: No user(ユーザーなし)

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

Agent: Password expired(パスワード期限切れ)

POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADStfhvei0D6IaFJO0g3, diagnostic message=, error code=49, matched dn=cn=PasswordPolicyUser,ou=LynxyUsers,dc=okta-openldap,dc=com, message=LDAPException(resultCode=49 (invalid credentials), errorMessage='invalid credentials'), result code=invalid credentials, vendor=OPEN_LDAP

Agent: Locked Out/Disabled (ロックアウト/無効化済み)

pwdLockout set as TRUE for user pwdPolicy

POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADSticrFpY0IyooMU0g3, diagnostic message=, error code=49, matched dn=cn=PasswordPolicyUser,ou=LynxyUsers,dc=okta-openldap,dc=com, message=LDAPException(resultCode=49 (invalid credentials), errorMessage='invalid credentials'), result code=invalid credentials, vendor=OPEN_LDAP