eDirectory LDAP統合リファレンス
このトピックでは、eDirectory LDAP統合に固有のリファレンス情報を提供します。Okta LDAP AgentをインストールしてeDirectoryをOktaと統合するには、この情報が必要になります。「Okta LDAP Agentをインストールする」を参照してください。
推奨バージョン
LDAP Agent for NetIQ eDirectory 8.8 SP8 (20812.10)
考慮事項
- 使用しているパスワードのリセットを要求し、管理者がリセットした後でパスワードの変更が必要なユーザーは、Okta End-User Dashboardにアクセスするために新しいパスワードを2回入力しなければなりません。
- プロビジョニング設定が[Do nothing(何もしない)]である場合は、ユーザーが非アクティブ化されても、Oktaではアクティブなままになります。単一のソースがユーザープロファイル属性を提供する場合、非アクティブ化されたユーザーはソースから接続解除され、Oktaがユーザープロファイル属性のソースになります。
- Oktaのログインフローやインポートフローは、memberを基にメンバー シップを処理します。NetIQはネストされたグループメンバーシップの追跡にgroupMemberを使用するため、OktaではNetIQ eDirectory統合のネストされたメンバーシップが処理できません。
統合の構成
LDAPエージェントをインストールして構成する際には、eDirectoryに以下の属性を使用します。
- 一意の識別子属性:localentryid
- DN属性:entrydn
- ユーザーオブジェクトクラス:inetorgperson
- ユーザーオブジェクトフィルター:(objectclass=inetorgperson)
- *アカウントで無効になっている属性:loginDisabled
- *アカウントで無効になっている値:TRUE
- *アカウントで有効になっている値:FALSE
- パスワード属性:userpassword
- グループオブジェクトクラス:groupofnames
- グループオブジェクトフィルター:(objectclass=groupofnames)
- メンバー属性:member
スキーマの読み出し
AUXクラスの属性を追加するには、そのクラスをAUXILIARYオブジェクトクラスとしてディレクトリプロビジョニング構成に追加します。たとえば、AUXILIARYオブジェクトクラスがdcObject
の場合は、Oktaスキーマ属性にdc
属性が追加されます。
パスワードの変更
ユーザーはOkta End-User Dashboardで[Settings(設定)]を選択してパスワードを変更できます。
LDAPインスタンスでeDirectory固有のパスワード設定を使用している場合は、ユーザーがセルフサービスのパスワード変更に正しいACL権限を持っていないと、Oktaでパスワードの変更やリセットが失敗することがあります。その場合はパスワードの変更が失敗し、「NDS error: no access (-672)(NDSエラー:アクセス権がありません(-672))」というエラーメッセージが返されます。
パスワードのリセット
管理者はパスワードのリセットをトリガーできます。ユーザーが[Forgot password(パスワードをお忘れですか)]リンクをクリックした場合にも、パスワードのリセットがトリガーされます。パスワードのリセットは、特定のACLを追加しなくても機能します。
新しいパスワードがパスワードポリシーの基準を満たさない場合は、パスワードのリセットが失敗する可能性があります。
インポート
modifyTimestampについて、eDirectoryには他のLDAPサーバーとは異なるDECIMALデータ型の精度があります。通常の値は3ですが、eDirectoryの場合は1に設定する必要があります。この値は以下の2通りの方法で設定できます。
- eDirectoryのサポートが有効で、LDAPエージェントがバージョン5.6.2以降の場合、DECIMALデータ型の精度はインストールプロセス中に自動的に1に設定されます。この値を変更するには、 に移動します。
- LDAPエージェントのバージョンが5.6.0または5.6.1の場合には、OktaLDAPAgent.confファイルで
generalizedTimeMillisecondDecimalPlaces
の値を1
に設定することで、デプロイされたすべてのエージェントについてDECIMALデータ型の精度を更新します。
LDAPエージェントのバージョンが5.6.0より前の場合には、eDirectory LDAP統合はサポートされません。
JITプロビジョニング
eDirectoryのジャストインタイム(JIT)プロビジョニングに関する特別な考慮事項はありません。ユーザーID(UID)については、メール形式を使ってOktaユーザー名のデフォルト設定と一致させます。サインインのトリガーに外部IDプロバイダー(IdP)を使用してはいけません。
JITプロビジョニングを正常に完了するには、次の条件が満たされている必要があります。
- 構成された命名属性(UIDなど)の値がOktaに存在しないこと。
- 構成された命名属性(UIDなど)の値が、JITが有効なすべてのディレクトリで一意であること。
- 必須属性が存在すること。Oktaのデフォルトはemail、givenName、sn、uidです。
- パスワードが正しいこと。
- アカウントで無効になっている属性がLDAPサーバーでfalseに設定されていること。
JITプロビジョニングが正常に完了すると、[LDAP settings(LDAP設定)]ページとプロファイルエディターで指定されたすべてのユーザー属性をOktaがインポートします。追加の必須属性を選択するには、プロファイルエディターを使用します。
メンバーシップのインポート
デフォルトのeDirectory設定が使用されている場合は、objectclass groupofnamesを持つユーザーグループがインポートされ、memberグループ属性で指定されたユーザーに追加されます。
membership属性がseeAlsoに設定されている場合は、seeAlsoユーザー属性に追加されたグループにユーザーが割り当てられます。
プロビジョニング
eDirectory LDAP統合に関する、特別な考慮事項はありません。
ユーザープロファイルの作成時にパスワードを作成して割り当てるには、次の手順を実行します。
- LDAPプッシュパスワードの更新を有効にするには、Oktaカスタマーサポートに連絡してください。
- 次の手順を実行して、委任認証を無効にします。
- Okta Admin Consoleで、 に移動します。
- [Delegated Authentication(委任認証)]ペインで[Edit(編集)]をクリックします。
- [Enable delegated authentication to LDAP(LDAPへの委任認証を有効にする)]チェックボックスをオフにします。
- [Save(保存)]をクリックします。
- デフォルト設定を受け入れてすべてのLDAPユーザーパスワードをリセットし、[Disable LDAP Authentication(LDAP認証を無効にする)]をクリックします。
- Okta Admin Consoleで に移動します。
- [Edit(編集)]をクリックし、[Sync Password(パスワードを同期)]の横にある[Enable(有効)]を選択して、[Save(保存)]をクリックします。
[Sync Password(パスワードを同期)]が有効になると、LDAPエージェントはユーザーが初めてサインインする時にPASSWORD_UPDATEアクションを送信します。
既存のOktaユーザーをLDAPに割り当てるには、次の手順を実行します。
- Okta Admin Consoleで に移動します。
- [Edit(編集)]をクリックし、[Create Users(ユーザーを作成)]の横にある[Enable(有効)]を選択して、[Save(保存)]をクリックします。
- をクリックします。
- ユーザーを割り当てるOktaグループを選択します。
- [Manage Directories(ディレクトリを管理)]をクリックします。
- 左側のペインでLDAPインスタンスを選択し、[Next(次へ)]をクリックします。
- [Provisioning Destination DN(プロビジョニング宛先DN)]フィールドに、新規ユーザーのLDAPコンテナーの完全識別名(DN)を入力します。
- [Confirm Changes(変更を確認)]をクリックします。
トラブルシューティング
LDAPディレクトリ認証に失敗すると、診断と解決に役立つ次のようなメッセージがエージェントログに表示されます。
エージェント:成功
POST initiated with result status=SUCCESS、actionType=USER_AUTH_AND_UPDATE、actionId=ADSuirvHXkjvU4It20g3、diagnostic message=、error code=、matched dn=、message=SUCCESS、result code=、vendor=UNDEFINED
エージェント:委任認証の失敗
POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADSzbsNoy4eNjPI090g3, diagnostic message=NDS error: failed authentication (-669), error code=49, matched dn=cn=UserEdirectoryNewOne@edir.com,o=QAUsers,dc=Okta,dc=Com, message=LDAPException(resultCode=49 (invalid credentials), errorMessage='NDS error: failed authentication (-669)', diagnosticMessage='NDS error: failed authentication (-669)'), result code=invalid credentials, vendor=UNDEFINED
エージェント:ユーザーなし
POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADSzbmckuuz7LniPk0g3, diagnostic message=, error code=, matched dn=, message=User not found while executing query: (&(objectclass=inetorgperson)(uid=UserEdirectoryNewOne@edir.com333)), result code=, vendor=UNDEFINED
エージェント:パスワードの有効期限切れ
POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADSu99dXaoVG7gFjG0g3, diagnostic message=8009030C: LdapErr: DSID-0C09042A, comment: AcceptSecurityContext error, data 532, v3839?, error code=49, matched dn=CN=delauth2,CN=\#Users,DC=funnyface,DC=net,DC=local, message=LDAPException(resultCode=49 (invalid credentials), errorMessage='8009030C: LdapErr: DSID-0C09042A, comment: AcceptSecurityContext error, data 532, v3839?', diagnosticMessage='8009030C: LdapErr: DSID-0C09042A, comment: AcceptSecurityContext error, data 532, v3839?'), result code=invalid credentials, vendor=AD_LDS
エージェント:ユーザーの非アクティブ化(loginDisabled = TRUE)
POST initiated with result status=FAILURE, actionType=USER_AUTH_AND_UPDATE, actionId=ADSzbyLP2YaxpJyKI0g3, diagnostic message=NDS error: log account expired (-220), error code=53, matched dn=cn=UserEdirectoryNewOne@edir.com,o=QAUsers,dc=Okta,dc=Com, message=LDAPException(resultCode=53 (unwilling to perform), errorMessage='NDS error: log account expired (-220)', diagnosticMessage='NDS error: log account expired (-220)'), result code=unwilling to perform, vendor=UNDEFINED