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インスタンスに転送されません。
ユーザー プロファイルを作成する際にパスワードを作成して割り当てるには
- Oktaカスタマーサポートに連絡してLDAPプッシュ パスワードのアップデートを有効化します。
- 代理認証を無効化します。
- 管理コンソールで、[セキュリティー] > に移動します [Delegated Authentication(代理認証)]>[LDAP]に進みます。
- [Delegated Authentication(代理認証)]ペインで[Edit(編集)]をクリックします。
- [Enable delegated authentication to LDAP(LDAPの代理認証を有効化)] チェック ボックスをオフにします。
- [Save(保存)]をクリックします。
- デフォルト設定を受け入れ、すべてのLDAP ユーザーパスワードをリセットし、[Disable LDAP Authentication(LDAP認証を無効化)]をクリックします。
- 管理コンソールで、[ディレクトリー] > に移動します [Directory Integrations(ディレクトリ統合)]>[LDAP]>[Provisioning(プロビジョニング)]>[To App(アプリへ)]に進みます。
- [Edit(編集)]、[Sync Password(パスワードを同期化)]の隣の[Enable(有効化)]、[Save(保存)]の順にクリックします。
[Sync Password(パスワードを同期化)]を有効にすると、ユーザーが初めてサインインしたときにLDAPエージェントはアクションPASSWORD_UPDATEを送信します。
既存のOktaユーザーをLDAPに割り当てるには
- 管理コンソールで、[ディレクトリー] > に移動します [Directory Integrations(ディレクトリ統合)]>[LDAP]>[Provisioning(プロビジョニング)]>[To App(アプリへ)]に進みます。
- [Edit(編集)]をクリックし、[Create Users(ユーザーの作成)]の隣にある[Enable(有効化)]を選択して[Save(保存)]をクリックします。
- [Directory(ディレクトリ)]>[Groups(グループ)]をクリックします。
- ユーザーの割り当て先となるOktaグループを選択します。
- [Manage Directories(ディレクトリを管理)]をクリックします。
- 左ペインでLDAPインスタンスを選択し、[Next(次へ)]をクリックします。
- [Provisioning Destination DN(プロビジョニング先のDN)]フィールドに新規ユーザーLDAPコンテナの完全識別名を入力します。
- [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