ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Directory Integration Platform管理者ガイド
11g リリース1(11.1.1)
B65032-03
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

E Oracle Directory Integration Platformのトラブルシューティング

この付録では、Oracle Directory Integration Platformの使用時に発生する可能性のある一般的な問題とその解決策について説明します。内容は次のとおりです。


関連項目:


E.1 Oracle Directory Integration Platformのトラブルシューティング用チェックリスト

Oracle Directory Integration Platformの問題をトラブルシューティングする際は、次のチェックリストを使用します。

E.2 一般的な問題

この項では、Oracle Directory Integration Platformに影響を与える問題について説明します。含まれる内容は、次のとおりです。

E.2.1 Oracle Password Filter for Microsoft Active Directoryは、Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionととも使用することに関して動作保証されていない

Oracle Password Filter for Microsoft Active Directoryを使用するには、Oracleバックエンド・ディレクトリがOracle Internet Directoryである必要があります。Oracle Unified Directoryバックエンド・ディレクトリおよびOracle Directory Server Enterprise Editionバックエンド・ディレクトリでは、Oracle Password Filter for Microsoft Active Directoryとの統合をサポートしていません。

E.2.2 LDIFファイルにネイティブ・エンコーディングがある場合は、非ASCII文字を含むLDIFファイルによってtestProfileコマンド・オプションが失敗する可能性がある

コマンドラインからDIPテスターを実行する場合、-ldiffileオプションが指定されており、LDIFファイルに非ASCII文字があると、manageSyncProfiles testProfileコマンドは失敗します。

この制限は、UTF-8エンコーディングのLDIFには影響しません。マルチバイト文字を含むLDIFファイルでUTF-8エンコーディングを保存できない場合、次の回避方法を使用します。

  1. コマンドラインから、ldapaddコマンドを使用してエントリを追加し、-Eオプションでロケールを指定します。必須コマンドの構文は、『Oracle Fusion Middleware Oracle Identity Managementユーザー・リファレンス』を参照してください。

  2. 最後の追加操作では、特定のchangeNumberを取得します。

  3. 前のステップのchangeNumberを使用して、testProfileコマンドを実行します。

詳細は、第7.1.5.2項「WLSTコマンドライン・インタフェースからのDIPテスターの実行」を参照してください。

E.2.3 高負荷のソース・ディレクトリでの競合状態によって一部の変更が同期されない

ソース・ディレクトリの負荷が高い場合、データベースのコミットがlastchangenumberへの更新に対応できなくなる競合状態が発生する場合があります。この競合状態が発生すると、Oracle Directory Integration Platformでは一部の変更を同期できなくなります。

この問題を回避するには、次の手順を実行して、データベースのコミットがlastchangenumberに対応できるようにします。

  1. 同期プロファイルの「スケジューリングの間隔」の値を増やします。

  2. プロファイルでsearchDeltaSizeパラメータを設定することで、同期サイクルの中でソース・ディレクトリで実行される検索の回数を制御します。最初は値を10に設定し、後で必要に応じて値を調整することをお薦めします。

E.2.4 Oracle Directory Integration Platformの停止後に同期が続行する

Oracle Directory Integration Platformアプリケーションを同期の実行中に停止すると、クォーツ・スケジューラによって開始された同期プロセスが継続して実行されます。

この問題を回避するには、Oracle Directory Integration PlatformをホストするOracle WebLogic管理対象サーバーを再起動するか、Oracle Directory Integration Platformアプリケーションを再デプロイします。

E.2.5 Windowsでファイル・パス・セパレータをエスケープする必要がある

Windowsでは、プロファイル・プロパティ・ファイル内およびOracle Directory Integration Platformコマンドの実行時、バックスラッシュ(\)を使用してファイル・パス・セパレータをエスケープする必要があります。次に例を示します。

  • プロファイル・プロパティ・ファイル内:

    odip.profile.configfile = C:\\test\\Oracle_
    IDM1\\ldap\\odi\\conf\\activeimp.cfg.master
    
  • manageDIPServerConfigなどのOracle Directory Integration Platformコマンドの実行時:

    C:\test\Oracle_IDM1\BIN>manageDIPServerConfig.bat set -attribute \
    keystorelocation -h myhost.mycompany.com -p 7005 -D LOGIN_ID \
    -value C:\\test\\Oracle_IDM1\\bin\\server_keystore.jks
    

E.2.6 JDK 1.6 u 21では、特定の問合せとプロビジョニング・プロファイル機能が失敗する可能性がある

LDAP JNDIフィルタの処理は、JDK 1.6 u21ではより厳密になるよう更新されています。そのため、Oracle Directory Integration Platformで実行される特定の問合せはJDK 1.6 u21では失敗する場合があり、プロビジョニング・プロファイル機能にも影響する場合があります。この問題を解決するには、My Oracle Support(旧MetaLink)からダウンロード可能なパッチ10631569をダウンロードし、適用する必要があります。https://support.oracle.comからMy Oracle Supportにアクセスします。

Identity Management 11.1.1.4.0には、パッチ10631569をダウンロードし、適用することをお薦めします。

E.3 構成の問題

この項では、Oracle Directory Integration Platformに影響を与える構成の問題について説明します。含まれる内容は、次のとおりです。

E.3.1 Oracle Directory Integration Platformの構成時、Oracle Internet Directoryホスト名としてlocalhostを使用しない

インストーラの「インストールと構成」インストール・オプションまたはOracle Identity Management 11gリリース1(11.1.1)の構成ウィザードを使用してOracle Directory Integration Platformを既存のOracle Internet Directoryに対して構成する場合、完全修飾ドメイン名(myhost.example.comなど)を使用してOracle Internet Directoryのホスト名を指定する必要があります。Oracle Directory Integration PlatformとOracle Internet Directoryが同じホストに共存する場合でも、localhostをOracle Internet Directoryのホスト名とし使用しないでください。

localhostをOracle Internet Directoryのホスト名として使用すると、Oracle Directory Integration PlatformをホストするOracle WebLogic管理対象サーバーを起動できません。

E.3.2 Oracle Unified Directoryに対してdipConfiguratorを実行した後にDirectory Integration Platformの再起動が必要な場合がある

Oracle Unified Directory (OUD)エンドポイントに対してdipConfiguratorを実行した後に、Enterprise MangerでDirectory Integration Platform (DIP) UIを開けない場合は、DIPを停止して起動し、UIの問題を解決してください。

E.3.3 プロファイルの構成時、マッピング・ルールを表示するのに空白のセクションを越してスクロールすることが必要な場合がある

Internet Explorerを使用してDirectory Integration Platform (DIP) UIを表示しているとき、プロファイル・マッピング・ルール・セクションを確認するために、大きな空白領域を越してスクロールすることが必要な場合があります。この問題は、他のブラウザに影響を与えるか不明です。

E.3.4 複数のIDMドメインが同じホスト上で実行される場合、リソース使用量グラフが表示されない

同じホスト上の2つのIDMドメインが同じOracleホームを共有し、どちらもwls_ods1管理対象サーバーを使用するように構成されている場合、両方のインスタンスが同時に実行されていると、DIPホーム・ページにリソース使用量グラフが表示されません。

E.4 原因および解決策

この項では、Oracle Directory Integration Platformの一般的な問題とその解決策について説明します。内容は次のとおりです。


注意:

Oracle Directory Integration Platformでは、「ファイルの場所とネーミング」に示した適切なファイルにエラー・メッセージが格納されます。


E.4.1 プロビジョニングのエラーと問題

この項では、プロビジョニングのエラーと問題の解決策を示します。

問題

GUIDからエントリを取得できません。致命的なエラー...

解決方法

Oracle Directory Integration Platformは、削除されたものの、パージされていない可能性のあるエントリを取得しようとしています。しかし、このエラーの発生時には、エントリはすでにパージされています。今後のエラーを回避するには、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の「ガベージ・コレクションの管理」の章を参照し、Oracle Internet Directoryのガベージ・コレクション・フレームワークのツームストン・パージ・コンフィギュレーション・セットを更新します。

問題

LDAP接続失敗

解決方法

Oracle Directory Integration Platformがディレクトリ・サーバーへの接続に失敗しました。ディレクトリ・サーバーへの接続を確認してください。


関連項目:

Oracleバックエンド・ディレクトリがOracle Internet Directoryである場合は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のディレクトリ・サーバー管理に関する章を参照してください。この章には、ディレクトリ・サーバー接続に関する情報が含まれています。


問題

初期化とデータベース接続の失敗、およびSQL操作のコール中の例外が発生しました。

解決方法

接続をテストするには、Oracle Enterprise Manager Fusion Middleware Controlで、プロファイルに対して接続のテスト機能を使用します。接続に失敗した場合、詳細については、次の場所にある診断ログ・ファイルを調べます。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/

注意:

ファイル名は、NAME_OF_MANAGED_SERVER-diagnostic.logです。


問題

プロビジョニング・プロファイルをDIPプロビジョニング・サーバーで実行できません。

解決方法

Oracle Enterprise Manager Fusion Middleware Controlまたはoidprovtoolコマンドを使用して、プロファイルが有効であること、およびOracle Directory Integration Platformのスケジューリング間隔が正の整数に設定されていることを確認してください。

問題

アプリケーション・データベースに接続できません。

解決方法

プロビジョニング・プロファイルのアプリケーション・データベース接続の要件は正しくない可能性があります。sqlplusを使用して接続要件を確認します。

問題

ユーザーまたはグループの変更イベントおよび削除イベントがアプリケーションで使用されません。

解決方法

Oracle Enterprise Manager Fusion Middleware Controlで、プロファイルに対して接続のテスト機能を使用して、ホストのポートの詳細情報および資格証明を確認します。接続のテストオプションの使用時に接続に失敗した場合は、失敗した接続に関する情報を示すエラー・メッセージが表示されます。

失敗した接続の詳細を参照するには、Oracle Enterprise Manager Fusion Middleware Controlを使用するか、コマンドラインから、診断ログを確認します。診断ログは次の場所にあります。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/

注意:

ファイル名は、NAME_OF_MANAGED_SERVER-diagnostic.logです。


問題

バイナリ属性に対するサブスクリプションにより、イベント伝播エラーが発生しました。

解決方法

バイナリ属性の伝播はサポートされていません。プロビジョニング・ファイルのイベント・サブスクリプションから、バイナリ属性の指定を削除します。

問題

アプリケーション識別名としてプロキシの役割を果すには不十分なアクセス権限。

解決方法

Oracle Directory Integration Platformサーバー・グループには、アプリケーション識別名別の参照権限は付与されていません。ldapmodifyコマンドを使用して、アプリケーション識別名からOracle Directory Integration Platformグループへの参照権限を付与する次のACIをロードします。

orclaci: access to attr=(*) by group="cn=odisgroup,cn=DIPAdmins,cn=Directory 
Integration Platform,cn=products,cn=oraclecontext "(read,write,search,compare)
orclaci: access to entry by group="cn=odisgroup,cn=DIPAdmins,cn=Directory 
Integration Platform,cn=products,cn=oraclecontext"(browse,proxy)

問題

アプリケーション識別名をプロキシとして使用するには不十分なアクセス権限。

解決方法

Oracle Directory Integration Platformサーバー・グループには、アプリケーション識別名別のプロキシ権限は付与されていません。ldapmodifyコマンドを使用して、アプリケーション識別名からOracle Directory Integration Platformグループへのプロキシ権限を付与する次のACIをロードします。

orclaci: access to entry by group=" cn=odisgroup, cn=odi,cn=oracle internet directory" (browse,proxy)

E.4.2 同期のエラーと問題

この項では、同期のエラーと問題の解決策を示します。


関連項目:

My Oracle Support(旧MetaLink)のNote 276481.1—「Troubleshooting OID DIP Synchronization Issues」(http://metalink.oracle.com/)


問題

LDAP: エラー・コード50 - 不十分なアクセス権限; 残りの名前 'CN=Users,dc=mycompany,dc=com'

解決方法

レコードのターゲットはデフォルト・コンテナには存在しません。DST CHANGE RECORDを検索します。ターゲット・コンテナのACIを確認します。空白の場合は、DIPテスターを使用して新しいコンテナに既知のACIセットを適用します。

問題

LDAP: エラー・コード50 - 不十分なアクセス権限; ACTIVECHGIMPマッピング、インポート操作失敗; エージェント実行成功、マッピング/IMPORT操作に失敗しました。

解決方法

デフォルトでは、cn=Users,default realmには適切なACIが含まれます。ただし、デフォルト・レルム内の異なるコンテナと同期化しようとするとこのエラーが発生することがあります。トレース・ファイルを開き、エラーの原因となっている変更レコードを見つけて、そのレコードの親コンテナのACIを確認します。ターゲット・コンテナに同じACIを適用します。

問題

Log File Error: Not able to construct DN Output ChangeRecord : Changetype: 1 ChangeKey: cn=users, dc=us,dc=oracle,dc=com Exception javax.naming. ContextNotEmptyException: [LDAP: error code 66 - Not Allowed On Non-leaf]; remaining name 'cn=users,dc=us,dc=oracle,dc=com' Missing mandatory attribute(s).

解決方法

マッピング・ファイルに問題があります。My Oracle Support(旧MetaLink)のNote 261342.1 —「Understanding DIP Mapping」(http://metalink.oracle.com/)を参照してください。

問題

Trace File Error: IPlanetImport:Error in Mapping Enginejava.lang.NullPointerException java.lang.NullPointerException at oracle.ldap.odip.engine.Connector.setValues(Connector.java:101).

解決方法

orclcondirlastappliedchgnum属性はnullであるか、値がありません。これは、ブートストラップに失敗した場合、または、Oracleバックエンド・ディレクトリへの移入を手動で行い、orclcondirlastappliedchgnum属性に値を割り当てなかった場合に発生することがあります。orclcondirlastappliedchgnum属性に値があることを確認します。値がない場合は、DIPテスター・ユーティリティまたはDIP Mbeanを構成するWLSTを使用して設定します。

問題

追加操作と変更操作は成功しますが、削除操作は失敗し、トレース・ファイルに記録されません。

解決策1

Oracle Directory Server Enterprise EditionまたはSun Java System Directory Serverでは、tombstoneは無効です。My Oracle Support(旧MetaLink)のNote 219835.1(http://metalink.oracle.com/)を参照して、tombstoneが有効化されていることを確認します。

解決策2

Microsoft Active Directoryの場合、プロファイルに使用されるアカウントは、DIR SYNCH ADMINグループのメンバーではありません。これは、Microsoft Active Directory管理者アカウントを使用していない場合にのみ、発生します。Microsoftの適切なパッチをインストールします。

問題

Oracle Directory Integrationインポート・コネクタまたはエクスポート・コネクタをサード・パーティLDAPディレクトリに対して構成した後、データの同期の問題が発生しました。

解決方法

manageSyncProfilesコマンドのtestProfile操作を使用して、原因を特定します。

問題

Oracle Enterprise Manager Fusion Middleware Controlを使用して同期プロファイルの属性マッピング・ルールを編集すると、オブジェクト・クラスに対してスキーマが初期化されていないというエラーの原因になります。

解決方法

この問題は、サード・パーティのディレクトリ接続の詳細に無効なディレクトリ・タイプが指定されているために発生することがあります。正しいディレクトリ・タイプおよび接続の詳細を指定していることを確認します。

問題

Oracle Enterprise Manager Fusion Middleware ControlのOracleバックエンド・ディレクトリ・プロファイルは、「同期成功」と表示されますが、ディレクトリではまだ変化が見られません。

解決方法

最初に、Oracle Enterprise Manager Fusion Middleware Controlを使用して、同期プロファイルの次のパラメータを調べることにより、同期が発生したかどうかを判定します。

  • 正常完了時間(DIP Serverホームページ)

  • 最終実行時間(DIP Serverホームページ)

  • スケジューリングの間隔(プロファイルの「拡張」タブ)

正常完了時間および最終実行時間メトリックにシステムの現在時刻と関連する時刻値がある場合に、同期が発生します。これらのメトリックが、システムの現在時刻よりかなり前の時刻値を示す場合、同期は発生しません

同期が発生している場合:

  • Oracle Enterprise Manager Fusion Middleware Controlの、該当するプロファイルの「マッピング」タブで、「ソース・コンテナ」設定を調べ、同期が正しい場所で発生するように構成されているか確認します。

  • Oracle Enterprise Manager Fusion Middleware Controlの、該当プロファイルの「フィルタリング」タブで、「ソースの一致フィルタ」設定を調べ、正しいオブジェクトがフィルタされているか確認します。

同期が発生していない場合:

  • Oracle Enterprise Manager Fusion Middleware ControlのDIP Serverホームページを使用して、同期プロファイルが有効化されているか確認します。

  • Oracle Enterprise Manager Fusion Middleware ControlのDIP Serverホームページを使用して、クォーツ・スケジューラのステータスを確認します。

  • manageSyncProfilesコマンドおよびそのtestProfile操作を使用して、同期プロファイルをテストします。manageSyncProfilesコマンドの詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

E.4.3 Windowsネイティブ認証のエラーと問題

この項では、Oracle Identity ManagementをWindowsネイティブ認証と統合する際に発生する可能性のあるエラーと問題の解決策を示します。


注意:

Oracle Directory Integration Platform 11gリリース1(11.1.1)は、Oracle Application Server Single Sign-On 10gリリース10.1.4.3.0以上をサポートしており、相互運用できます。



関連項目:

Windowsネイティブ認証のエラーの詳細は、Oracle Enterprise Single Sign-On Suite Plus管理者ガイドのトラブルシューティングに関する章の、Windowsネイティブ認証エラーの問題と解決策に関する説明を参照してください。


問題

内部サーバー・エラーです。管理者に連絡してください。

解決方法

Windowsネイティブ認証が中間層コンピュータで正しく構成されていません。この問題を修正するには、次の手順を実行します。

  1. opmn.logファイルでエラーをチェックします。

  2. ssoServer.logファイルでエラーをチェックします。

  3. keytabファイルが$ORACLE_HOME/j2ee/OC4J_SECURITY/configディレクトリにあり、jazn-data.xmlファイルで構成されたプリンシパル名が正しいことを確認します。

  4. Key Distribution Centerにアクセスできるように、シングル・サインオンの中間層コンピュータが正しく構成されていることを確認します。

問題

KDCで認証できませんでした。

解決方法

このエラー・メッセージは、krb5.confでレルム名が誤って構成されている場合に表示されることがあります。/etc/krb5/krb5.confdefault_realmおよびdomain_realmの値を確認します。レルム名は大/小文字が区別されることに注意してください。

問題

ブラウザがWindowsのKerberos認証をサポートしていないか適切に構成されていません。

解決方法

ユーザーのWebブラウザはサポートされていないか、正しく構成されていません。「タスク2: Windowsネイティブ認証用のInternet Explorerの構成」の指示に従います。

問題

「アクセスが許可されていません」、HTTPエラー・コード403、または「Windowsのネイティブ認証に失敗しました。管理者に連絡してください」

解決方法

これらのエラー・メッセージの共通の原因は、Oracleバックエンド・ディレクトリでユーザー・エントリが見つからないことです。Windowsデスクトップで作業しているローカル管理者が、エントリがOracleバックエンド・ディレクトリと同期化されていない可能性のあるシングル・サインオン・パートナ・アプリケーションにアクセスしようとしている場合があります。ユーザー・エントリがディレクトリ内に存在するかどうか、およびユーザーのKerberosプリンシパル属性がMicrosoft Active Directoryから適切に同期化されるかどうかを判断します。

問題

パートナ・アプリケーションにアクセスすると、Windowsのログイン・ダイアログ・ボックスが(ユーザー名、パスワードおよびドメイン・フィールド付きで)表示されます。

解決方法

Oracleバックエンド・ディレクトリで対応するユーザー・エントリが見つからないため、Single Sign-On ServerでKerberosトークンを認証できませんでした。ディレクトリにユーザー・エントリを追加します。

問題

Single Sign-On Serverが起動しません。ログ・ファイルに「Credential not found.」というメッセージの例外があります。

解決方法

パラメータkerberos-servicenameが正しく構成されていない可能性があります。この問題を修正するには、次の手順を実行します。

  1. ファイルorion-application.xmlおよびjazn-data.xmlkerberos-servicenameが正しく構成されていることを確認します。orion-application.xmlファイルでのこのパラメータの形式はHTTP@sso.mycompany.comです。jazn-data.xmlファイルでの形式はHTTP/sso.mycompany.comです。

  2. ssoServer.logファイルでエラーをチェックします。

  3. keytabファイルが$ORACLE_HOME/j2ee/OC4J_SECURITY/configディレクトリにあり、jazn-data.xmlで構成されたプリンシパル名が正しいことを確認します。

  4. Kerberosドメイン・コントローラにアクセスできるように、シングル・サインオンの中間層コンピュータが構成されていることを確認します。

問題

OracleAS Single Sign-On Server Configuring Assistantの実行時に、次の例外が発生します。

Repository Access API throws exception :
oracle.ias.repository.schema.SchemaException: Unable to establish secure 
connection to Oracle Internet Directory Server 
ldap://server.mycompany.com:636/ Base Exception : 
javax.naming.CommunicationException: server.mycompany.com:636 [Root 
exception is java.lang.UnsatisfiedLinkError: no njssl10 in java.library.path]
        at 
oracle.ias.repository.directory.DirectoryReader.connectSsl(DirectoryReader.java:
98)
        at 
oracle.ias.repository.directory.DirectoryReader.connect(DirectoryReader.java:106
)
        at oracle.ias.repository.IASSchema.getDBPassword(IASSchema.java:440)
        at 
oracle.ias.repository.SchemaManager.getDBPassword(SchemaManager.java:310)
        at oracle.security.sso.IMWNAConfig.getSSOHost(IMWNAConfig.java:903)
        at oracle.security.sso.IMWNAConfig.parseArgs(IMWNAConfig.java:168)
        at oracle.security.sso.IMWNAConfig.init(IMWNAConfig.java:194)
        at oracle.security.sso.IMWNAConfig.work(IMWNAConfig.java:60)
        at oracle.security.sso.SSOConfigAssistant.wnaConfig(SSOConfigAssistant.java:243)
        at oracle.security.sso.SSOConfigAssistant.main(SSOConfigAssistant.java:218)

解決方法

OracleAS Single Sign-On Server Configuring AssistantのWindows版がUNIXおよびLinuxプラットフォームで実行される場合に、この例外が発生します。「各Oracle Application Server Single Sign-OnホストでのOracleAS Single Sign-On Server Configuration Assistantの実行」の指示に従い、OracleAS Single Sign-On Server Configuring AssistantのUNIX/Linux版を実行します。

問題

Windowsネイティブ認証で、Internet ExplorerがKerberos資格証明のかわりにNT Lan Manager(NTLM)認証を送信しています。

解決方法

この問題は、不適切に構成されたMicrosoft Active Directoryのインストールに起因します。この問題の解決方法の詳細は、Microsoft Active Directoryのドキュメントを参照するか、またはMicrosoftに連絡してください。

問題

個別ユーザーが、Windowsネイティブ認証を使用して特定のコンピュータからログインできません。

解決方法

ユーザーが別のコンピュータを使用してログインできる場合、元のコンピュータのWindowsまたはInternet Explorerの構成に問題があります。この問題の解決方法の詳細は、Microsoft Developer Network(http://msdn.microsoft.com)を参照するか、またはMicrosoftに連絡してください。

E.4.4 Novell eDirectoryとOpenLDAPの同期のエラーと問題

この項では、Novell eDirectoryとOpenLDAPで発生する可能性のある同期のエラーと問題に対する解決策を示します。

問題

インポート同期の構成後、プロファイルの同期ステータスは成功で、トレース・ファイルに例外が示されていなくても、Novell eDirectoryまたはOpenLDAPからOracleバックエンド・ディレクトリにエントリが同期化されません。

考えられる原因と解決策は、次のとおりです。

原因 誤った値がインポート・プロファイルのodip.profile.condirfilterプロパティのmodifiersnameパラメータに割り当てられています。

解決策 接続識別名を、Novell eDirectoryまたはOpenLDAPのエクスポート・プロファイルからインポート・プロファイルのodip.profile.condirfilterプロパティのmodifiersnameパラメータにコピーします。

原因 Oracle Directory Integration Platformが同期化しようとしたエントリが、インポート・ファイルのodip.profile.condirfilterプロパティのmodifiersnameパラメータに割り当てられたものと同じ識別名を使用して作成されています。

解決策 インポート・ファイルのodip.profile.condirfilterプロパティのmodifiersnameパラメータに割り当てられている識別名を、Novell eDirectoryまたはOpenLDAPでエントリを作成しない識別名に変更します。

原因 Oracleバックエンド・ディレクトリを実行しているコンピュータと、Novell eDirectoryまたはOpenLDAPを実行しているコンピュータとの間に時間差があります。

解決策 インポート・ファイルのodip.profile.configfileプロパティのReduceFilterTimeInSecondsパラメータに、2つのコンピュータ間の時間差と等しい秒数を値として割り当てます。

問題

リコンシリエーション時にスローされたサポート外の例外。

解決方法

Novell eDirectoryまたはOpenLDAPのリコンシリエーション・ルールに指定されているOracleバックエンド・ディレクトリの属性の1つ以上が索引付けされていません。Oracleバックエンド・ディレクトリの対応する属性を索引付けします。

問題

プロファイルのリコンシリエーション・ステータスは成功でも、Novell eDirectoryまたはOpenLDAPからOracleバックエンド・ディレクトリに削除済エントリが同期化されません。

考えられる原因と解決策は、次のとおりです。

原因 削除済エントリがNovell eDirectoryまたはOpenLDAPのリコンシリエーション・ルールに指定されていません。

解決策 Novell eDirectoryまたはOpenLDAPのリコンシリエーション・ルールを変更して、削除済エントリを含めます。

原因 Novell eDirectoryまたはOpenLDAPに特定のリコンシリエーション・ルールに関するエントリがOracleバックエンド・ディレクトリよりも多く存在します。

解決策 次のメッセージがないか、$ORACLE_HOME/ldap/odi/log/profile_name.trcファイルを調べてください。

No. of entries are less in destination directory compared to source directory.

このメッセージは、通常、Novell eDirectoryまたはOpenLDAP DIT全体をOracleバックエンド・ディレクトリと同期化する必要がある場合に生成されます。この問題を解決するには、odip.profile.configfileプロパティのCheckAllEntriesパラメータにtrue値を割り当てます。


注意:

odip.profile.configfileプロパティのCheckAllEntriesパラメータにtrue値を指定すると、パフォーマンスが低下します。


E.4.5 Oracle Password Filter for Microsoft Active Directoryのエラーと問題

この項では、Oracle Password Filter for Microsoft Active Directoryで発生する可能性のあるエラーと問題に対する解決策を示します。

問題

Oracle Password Filter for Microsoft Active Directoryをインストールできず、次のエラーがログに報告されます。

(Aug 23, 2010 8:26:52 PM), Install, com.oracle.installshield.adpwd.ldapModify, dbg, C:\Program Files (x86)\oracle\ADPasswordFilter\prepAD.ldif

(Aug 23, 2010 8:26:52 PM), Install, com.oracle.installshield.adpwd.ldapModify, err, in LDAPOperation

(Aug 23, 2010 8:26:52 PM), Install, com.oracle.installshield.adpwd.ldapModify, err, [LDAP: error code 19 - 000020B5: AtrErr: DSID-03152704, #1:

0: 000020B5: DSID-03152704, problem 1005 (CONSTRAINT_ATT_TYPE), data 0, Att 9030e (objectCategory)

原因

このエラーは、ActiveDirectoryのschemaNamingContextオブジェクトがdefaultNamingContextの下にない場合に発生することがあります。

解決方法

この問題を解決するには、次のいずれかを行います。

  • prepAD.ldifObjectCategory属性を、CN=Organizational-Unit, schemaNamingContext値に置き換えます
    (schemaNamingContextはスキーマ名コンテキスト値で置き換えられます)。

  • prepAD.ldifからObjectCategory属性を削除します。エントリがActiveDirectoryに追加されるため、objectcategory属性には自動的に正常な値が移入されます。

問題

ログ・ファイル・パスが見つかりません。

原因

ログ・ファイル・パスが無効です。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、有効なログ・ファイル・パスを指定します。

問題

非SSLモード(モード1)でOracle Internet Directoryに接続できません。


注意:

Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは、非SSLモード(モード1)はサポートされません。


原因

Oracle Internet Directoryのコンフィギュレーション・セットが無効です。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、Oracle Internet Directoryのコンフィギュレーション・セットを修正します。

問題

SSLモードでOracleバックエンド・ディレクトリに接続できません。

原因

Oracleバックエンド・ディレクトリの認証局の信頼できる証明書がMicrosoft Active Directoryドメイン・コントローラにインポートされていません。

解決方法

「Microsoft Active Directoryドメイン・コントローラへの信頼できる証明書のインポート」の指示に従い、Microsoft Active Directoryに信頼できる証明書をインポートします。

問題

Microsoft Active Directoryに接続できません。

原因

Microsoft Active Directoryの構成設定が無効です。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、Microsoft Active Directoryの構成設定を修正します。

問題

prepAD.ldifファイルをアップロードできません。

原因

指定されたMicrosoft Active DirectoryのベースDNコンテナにorganizationalUnitオブジェクトを格納できません。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、organizationalUnitオブジェクトを格納できるMicrosoft Active DirectoryのベースDNを指定します。

問題

Oracleバックエンド・ディレクトリとMicrosoft Active Directoryとの間でパスワードの更新がループしています。

原因

Oracle Password Filterが、Microsoft Active DirectoryからOracleバックエンド・ディレクトリに値をインポートする同期プロファイルに指定されているものと同じバインドDNとパスワードを使用するように構成されていません。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、Microsoft Active DirectoryからOracleバックエンド・ディレクトリに値をインポートする同期プロファイルに指定されているものと同じバインドDNとパスワードを使用するようにOracle Password Filterを構成します。

問題

一部のパスワードが、Oracleバックエンド・ディレクトリとMicrosoft Active Directoryの間で同期化されません。

原因

Oracleバックエンド・ディレクトリとMicrosoft Active Directoryで、競合するパスワード・ポリシーを指定しています。

解決方法

Oracleバックエンド・ディレクトリのパスワード・ポリシーをMicrosoft Active Directoryに設定されているものと同じポリシーに設定するか、Oracleバックエンド・ディレクトリからパスワード・ポリシーを削除します。

問題

一部のユーザーについて、パスワードが同期化されません。

原因

Oracle Password Filterの拡張インストールを実行して、Oracleバックエンド・ディレクトリとMicrosoft Active Directoryの間で同期化する属性に異なる値を指定しています。

解決方法

「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従い、Oracleバックエンド・ディレクトリとMicrosoft Active Directoryの間で同期化する属性に対して、同じ値を指定します。

問題

ユーザー・データは同期化されますが、パスワードの同期化が遅延します。

原因

ユーザー・データの同期とパスワードの同期に、異なる時間間隔が指定されています。

解決方法

Oracle Password FilterのSleepTimeパラメータに割り当てられる値が、同期プロファイルのデフォルトのスケジューリング間隔と同じであることを確認します。Oracle Enterprise Manager Fusion Middleware ControlツールまたはmanageSyncProfilesコマンドを使用して、同期プロファイルのデフォルトのスケジューリング間隔を表示および変更できます。SleepTimeパラメータに割り当てられている値を変更するには、「Oracle Password Filter for Microsoft Active Directoryの再構成」の指示に従います。

E.5 同期に関するトラブルシューティング

この項では、Oracle Directory Integration Platformとの同期に関する問題をトラブルシューティングする方法について説明します。内容は次のとおりです。

E.5.1 Oracle Directory Integration Platformの同期プロセスの流れ

Oracleバックエンド・ディレクトリと接続ディレクトリ間の同期に関する問題をデバッグする場合、Oracle Directory Integration Platformの同期プロセスの流れを理解することが役立ちます。

E.5.1.1 インポート・プロファイルの場合のOracle Directory Integration Platformの同期プロセスの流れ

Oracle Directory Integration Platformでは、起動時にすべてのインポート・プロファイルを読み取ります。ENABLEに設定されているプロファイルごとに、同期プロセスの間に、Oracle Directory Integration Platformにより次のタスクが実行されます。

  1. サード・パーティ・ディレクトリに接続します。

  2. 接続ディレクトリから最終変更キーの値を取得します。

  3. Oracleバックエンド・ディレクトリに接続します。

  4. プロファイルの最後に適用された変更キーの値をOracleバックエンド・ディレクトリから取得します。

  5. Oracleバックエンド・ディレクトリからOracle Directory Server Enterprise Edition(以前のSun Java System Directory Server)に接続する場合、Oracle Directory Integration Platformは、リモート変更ログで、最後に適用された変更キーの値より大きいエントリと、最終変更キーの値以下のエントリを検索します。Microsoft Active Directory接続の場合、Oracle Directory Integration Platformはリモート・ディレクトリのUSNChanged値でこの情報を検索します。Novell eDirectoryおよびOpenLDAPコネクタの場合、変更は各エントリのmodifytimestamp属性に基づいて識別されます。Oracle Human Resourcesコネクタなど、他のタイプのコネクタの場合、Oracle Directory Integration Platformは類似のタイプの検索を実行しますが、データの交換方法は接続のタイプによって異なります。

  6. データ値を接続ディレクトリからOracleバックエンド・ディレクトリの値へマップします。

  7. Oracleバックエンド・ディレクトリ変更レコードを作成します。

  8. Oracleバックエンド・ディレクトリで変更を適用(追加、変更、削除)します。

  9. Oracleバックエンド・ディレクトリ・インポート・プロファイルを、最終実行時間と接続ディレクトリから最後に適用された変更キーで更新します。

  10. 同期の間隔として指定された秒数のスリープ・モードに入ります。

E.5.1.2 エクスポート・プロファイルの場合のOracle Directory Integration Platformの同期プロセスの流れ

Oracle Directory Integration Platformでは、起動時にすべてのエクスポート・プロファイルを読み取ります。ENABLEに設定されているプロファイルごとに、同期プロセスの間に、Oracle Directory Integration Platformにより次のタスクが実行されます。

  1. サード・パーティ・ディレクトリに接続します。

  2. Oracleバックエンド・ディレクトリに接続します。

  3. 最後の変更キーの値をOracleバックエンド・ディレクトリから取得します。

  4. プロファイルの最後に適用された変更キーの値をOracleバックエンド・ディレクトリから取得します。

  5. Oracle Directory Integration Platformは、Oracleバックエンド・ディレクトリの変更ログで、最後に適用された変更キーの値より大きいエントリと、最終変更キーの値以下のエントリを検索します。

  6. データ値をOracleバックエンド・ディレクトリから接続ディレクトリの値へマップします。

  7. 変更レコードを作成します。

  8. 接続ディレクトリに変更を適用(追加、変更、削除)します。

  9. Oracleバックエンド・ディレクトリ・エクスポート・プロファイルを、最終実行時間とOracleバックエンド・ディレクトリから最後に適用された変更キーで更新します。

  10. 同期の間隔として指定された秒数のスリープ・モードに入ります。

E.5.2 同期プロファイルの登録の概要

この項では、同期プロファイルの登録に関する情報を提供します。

DISABLED状態で登録されているプロファイルの検証

登録されているプロファイルの検証は必須ではありません。ただし、検証がプロファイル作成の妨げにならないかぎり、登録済プロファイルを検証できます。

検証が失敗したDISABLEDプロファイルの登録

DISABLED状態のプロファイルの検証が失敗しても、そのプロファイルは登録されたままです。DISABLED状態のプロファイルは、エラーがあるか、ターゲット・システム・ディレクトリへの資格証明が不明である可能性がありますが、これは、プロファイルの登録を妨げるものではありません。

プロファイル・エラーの修正

サード・パーティのディレクトリ・パスワードが誤っているなどの原因でプロファイルの登録中にエラーを受信した場合、manageSyncProfilesコマンドライン・ツールを使用してプロファイルのエラーを修正します。詳細は、「manageSyncProfilesを使用した同期プロファイルの管理」を参照してください。

E.5.3 diagnostic.logファイルの概要

この項では、Oracle Directory Integration Platformのdiagnostic.logファイルの概要を説明します。このファイルは次の場所にあります。

MW_HOME/user_projects/domains/DOMAIN_NAME/servers/NAME_OF_MANAGED_SERVER/logs/

注意:

ファイル名は、NAME_OF_MANAGED_SERVER-diagnostic.logです。


下記はdiagnostic.logファイルの例で、セクションに分割され、Oracle Directory Integration Platformのトラブルシューティングを行うときに役立つ情報を識別するための注釈が付けられています。注目すべき情報は太字で示され、テキストHost: HOST_NAME: PORTは、Oracle Directory Integration Platformが接続しているマシンのホスト名およびポートを示します。

起動情報

diagnostic.logファイルの次のセクションは、Oracle Directory Integration Platformの起動に関連する情報を示しています。このセクションでは、次のことに注意してください。

  • SSL Mode:は、Oracleバックエンド・ディレクトリへの接続に使用される接続モードを示します。SSL Mode: 1またはSSL Mode: 2が表示されます。SSL Mode: 2が表示される場合、Oracle Directory Integration PlatformはOracleバックエンド・ディレクトリへの接続に証明書を使用します。Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionでは、SSLモード2のみがサポートされます。モード1(非SSLモード1)はサポートされません。

  • Scheduler initializedは、プロファイル・スケジューラが適切に初期化されたことを示します。Oracleバックエンド・ディレクトリ・サーバーへの接続に成功したことを示す文字列が続きます。

  • スキーマ・オブジェクトが初期化され、プロファイルの同期がスケジュールされます。

[2009-02-18T00:52:27.530-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: 
[ACTIVE].ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: 
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Copyright (c) 1982, 
2009 Oracle.  All rights reserved

[2009-02-18T00:52:27.550-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: 
[ACTIVE].ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: 
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] SSL Mode : 1

[2009-02-18T00:52:27.554-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: 
[ACTIVE].ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: 
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Host: HOST_NAME: PORT

[2009-02-18T00:52:38.104-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId: 
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Scheduler intialized 

[2009-02-18T00:52:47.273-08:00] [wls_ods1] [NOTIFICATION] [DIP-10571] [oracle.dip] [tid: Scheduler] 
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Connection to LDAP Server Successful

[2009-02-18T00:52:47.334-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId: 
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] OBJECT_SCHEMA_READER_INITIALIZING

[2009-02-18T00:52:47.508-08:00] [wls_ods1] [NOTIFICATION] [DIP-10572] [oracle.dip] [tid: Scheduler] 
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Object Schema Reader Initialized.

[2009-02-18T00:52:47.510-08:00] [wls_ods1] [NOTIFICATION] [DIP-10573] [oracle.dip] [tid: Scheduler] 
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Event Schema Reader Initialized.

[2009-02-18T00:52:48.198-08:00] [wls_ods1] [NOTIFICATION] [DIP-10574] [oracle.dip] [tid: Scheduler] 
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Data 
transfer interface defn initialized

[2009-02-18T00:52:48.213-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId: 
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] INITALIZE_PROVJOBS

[2009-02-18T00:52:48.773-08:00] [wls_ods1] [NOTIFICATION] [DIP-10566] [oracle.dip] [tid: Scheduler] 
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] [arg: 
\n----------EVENT TYPE CONFIGURATION 
---------------\n--------------------------------\nEventLDAPChangeType : 
ADD,MODIFY,DELETE\nobjectclass: 
inetorgperson,orcluserv2\n--------------------------------\nEventLDAPChangeType : 
ADD,MODIFY,DELETE\nobjectclass: 
orclservicesubscriptiondetail\n--------------------------------\nEventLDAPChangeType : 
ADD,MODIFY,DELETE\nobjectclass: *\n--------------------------------\nEventLDAPChangeType : 
ADD,MODIFY,DELETE\nobjectclass: 
inetorgperson,orcluserv2\n--------------------------------\nEventLDAPChangeType : 
ADD,MODIFY,DELETE\nobjectclass: 
orclsubscriber\n--------------------------------\nEventLDAPChangeType : 
ADD,MODIFY,DELETE\nobjectclass: 
orclgroup,orclprivilegegroup,groupofuniquenames,groupofnames\n-------------------------------------
-------------] Print Event Type Configuration...[[
----------EVENT TYPE CONFIGURATION ---------------
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: inetorgperson,orcluserv2
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: orclservicesubscriptiondetail
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: *
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: inetorgperson,orcluserv2
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: orclsubscriber
--------------------------------
EventLDAPChangeType : ADD,MODIFY,DELETE
objectclass: orclgroup,orclprivilegegroup,groupofuniquenames,groupofnames
--------------------------------------------------
]]

[2009-02-18T00:52:48.826-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId: 
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] INITALIZE_SYNCJOBS

[2009-02-18T00:52:50.804-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId: 
<anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] Job submission successfulActiveExport SYNC_JOB 60

[2009-02-18T00:52:50.809-08:00] [wls_ods1] [NOTIFICATION] [EVENT_NOT_ENABLED] [oracle.dip] [tid: 
Scheduler] [userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] 

[2009-02-18T00:52:52.184-08:00] [wls_ods1] [NOTIFICATION] [DIP-10605] [oracle.dip] [tid: Scheduler] 
[userId: <anonymous>] [ecid: 0000Hy8^kIXF0FQ6ubn3EH19awhV000001,0] [APP: DIP#11.1.1.1.0] [arg: 
ActiveExport] Profile : ActiveExport added successfully for scheduling.

UpdateThreadによるプロファイル内の変更の検出

diagnostic.logファイルの次のセクションには、同期プロファイルおよびプロビジョニング・プロファイルに対して行われた変更を検出するUpdateThreadジョブに関連する情報が表示されます。UpdateThreadによって変更が確認されると、プロファイルは変更され、再スケジュールされます。このセクションでは、次のことに注意してください。

[2009-02-18T01:20:42.501-08:00] [wls_ods1] [NOTIFICATION] [DIP-10580] [oracle.dip] [tid: 
UpdateThread] [userId: <anonymous>] [ecid: 0000Hy8fyF1F0FQ6ubn3EH19ax8V000003,0] [APP: 
DIP#11.1.1.1.0] [arg: 
(&(objectclass=changelogentry)(changenumber>=3340)(|(targetdn=*cn=Profiles,cn=Provisioning,cn=Direc
tory Integration Platform,cn=Products,cn=OracleContext)(targetdn=*cn=event definitions,cn=directory 
integration platform,cn=products,cn=oraclecontext)(targetdn=*cn=object definitions,cn=directory 
integration platform,cn=products,cn=oraclecontext)))] Changelog Filter : 
(&(objectclass=changelogentry)(changenumber>=3340)(|(targetdn=*cn=Profiles,cn=Provisioning,cn=Direc
tory Integration Platform,cn=Products,cn=OracleContext)(targetdn=*cn=event definitions,cn=directory 
integration platform,cn=products,cn=oraclecontext)(targetdn=*cn=object definitions,cn=directory 
integration platform,cn=products,cn=oraclecontext)))

プロファイル初期化

diagnostic.logファイルの次のセクションは、プロファイル初期化に関連する情報を示しています。このセクションでは、ActiveImportプロファイルがスケジュールされていることに注意してください。

[2009-02-18T02:26:19.604-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId: 
<anonymous>] [ecid: 0000Hy8unSqF0FQ6ubn3EH19ay88000001,0] [APP: dipapp#11.1.1.1.0] INITALIZE_SYNCJOBS

[2009-02-18T02:26:19.695-08:00] [wls_ods1] [NOTIFICATION] [] [oracle.dip] [tid: Scheduler] [userId: 
<anonymous>] [ecid: 0000Hy8unSqF0FQ6ubn3EH19ay88000001,0] [APP: dipapp#11.1.1.1.0] Job submission successfulActiveImport SYNC_JOB 60

[2009-02-18T02:26:19.703-08:00] [wls_ods1] [NOTIFICATION] [EVENT_NOT_ENABLED] [oracle.dip] [tid: 
Scheduler] [userId: <anonymous>] [ecid: 0000Hy8unSqF0FQ6ubn3EH19ay88000001,0] [APP: dipapp#11.1.1.1.0] 

[2009-02-18T02:26:19.741-08:00] [wls_ods1] [NOTIFICATION] [DIP-10605] [oracle.dip] [tid: Scheduler] 
[userId: <anonymous>] [ecid: 0000Hy8unSqF0FQ6ubn3EH19ay88000001,0] [APP: dipapp#11.1.1.1.0] [arg: 
ActiveImport] profile added successfully for scheduling : ActiveImport

データベース障害

diagnostic.logファイルの次のセクションには、データベースが稼働していない場合に表示されるメッセージが表示されます。

Feb 18, 2009 3:01:19 AM org.quartz.impl.jdbcjobstore.JobStoreSupport$ClusterManager manage
SEVERE: ClusterManager: Error managing cluster: Failed to obtain DB connection from data source 
'schedulerDS': java.sql.SQLException: Could not retrieve datasource via JNDI url 'jdbc/schedulerDS' 
weblogic.jdbc.extensions.PoolDisabledSQLException: 
weblogic.common.resourcepool.ResourceDisabledException: Pool schedulerDS is disabled, cannot 
allocate resources to applications..
org.quartz.JobPersistenceException: Failed to obtain DB connection from data source 'schedulerDS': 
java.sql.SQLException: Could not retrieve datasource via JNDI url 'jdbc/schedulerDS' 
weblogic.jdbc.extensions.PoolDisabledSQLException: 
weblogic.common.resourcepool.ResourceDisabledException: Pool schedulerDS is disabled, cannot 
allocate resources to applications.. [See nested exception: java.sql.SQLException: Could not 
retrieve datasource via JNDI url 'jdbc/schedulerDS' 
weblogic.jdbc.extensions.PoolDisabledSQLException: 
weblogic.common.resourcepool.ResourceDisabledException: Pool schedulerDS is disabled, cannot 
allocate resources to applications..]
        at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:636)
        at org.quartz.impl.jdbcjobstore.JobStoreTX.getNonManagedTXConnection(JobStoreTX.java:72)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport.doCheckin(JobStoreSupport.java:3070)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport$ClusterManager.manage(JobStoreSupport.java:3713)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport$ClusterManager.run(JobStoreSupport.java:3749)
Caused by: java.sql.SQLException: Could not retrieve datasource via JNDI url 'jdbc/schedulerDS' 
weblogic.jdbc.extensions.PoolDisabledSQLException: 
weblogic.common.resourcepool.ResourceDisabledException: Pool schedulerDS is disabled, cannot 
allocate resources to applications..
        at org.quartz.utils.JNDIConnectionProvider.getConnection(JNDIConnectionProvider.java:166)
        at org.quartz.utils.DBConnectionManager.getConnection(DBConnectionManager.java:112)
        at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:633)

正常な同期操作

diagnostic.logファイルの次のセクションには、ユーザーの正常な初期化が表示されます。

QuartzJobListener says: Job ActiveImport Is about to be executed.Wed Feb 18 03:36:00 PST 2009
createChangeRecord:ChangeRecord : ----------
Changetype: ADDRMODIFY
ChangeKey: cn=myuser2,cn=users,dc=imtest,dc=com
Attributes: 
Class: null Name: userprincipalname Type: null ChgType: DELETE Value: [ ]
Class: null Name: givenname Type: null ChgType: DELETE Value: [ ]
Class: null Name: employeeid Type: null ChgType: DELETE Value: [ ]
Class: null Name: physicaldeliveryofficename Type: null ChgType: DELETE Value: [ ]
Class: null Name: title Type: null ChgType: DELETE Value: [ ]
Class: null Name: mobile Type: null ChgType: DELETE Value: [ ]
Class: null Name: telephonenumber Type: null ChgType: DELETE Value: [ ]
Class: null Name: facsimiletelephonenumber Type: null ChgType: DELETE Value: [ ]
Class: null Name: l Type: null ChgType: DELETE Value: [ ]
Class: null Name: thumbnailphoto Type: null ChgType: DELETE Value: [ ]
Class: null Name: samaccountname Type: nonbinary ChgType: REPLACE Value: [MyUser2]
Class: null Name: objectsid Type: nonbinary ChgType: REPLACE Value: [[B@1b994c4]
Class: null Name: objectguid Type: nonbinary ChgType: REPLACE Value: [[B@1b990b5]
Class: null Name: distinguishedname Type: nonbinary ChgType: REPLACE Value: 
[CN=MyUser2,CN=Users,DC=imtest,DC=com]
Class: null Name: cn Type: nonbinary ChgType: REPLACE Value: [MyUser2]
Class: null Name: objectclass Type: nonbinary ChgType: REPLACE Value: [top, person, 
organizationalPerson, user]
-----------
copying : changeRecord to dstchange for writing
In DIPSYNC: doOneIteration():execMapping status0
QuartzJobListener says: Job ActiveImport was executed.Wed Feb 18 03:36:00 PST 2009

E.6 Microsoft Active Directoryとの統合に関するトラブルシューティング

この項では、Microsoft Active Directoryとの統合に関する問題をトラブルシューティングする方法について説明します。内容は次のとおりです。

E.6.1 Windowsネイティブ認証のデバッグ

Windowsネイティブ認証の構成後(「Windowsネイティブ認証の構成」を参照)、実行時にこの機能のロギングを有効にできます。opmn.xmlファイル($ORACLE_HOME/opmn/confにある)を開き、次のパラメータを追加します。

-Djazn.debug.log.enable = {true | false}

パラメータにtrueの値を指定するとデバッグが有効になり、falseの値を指定すると無効になります。

次の例の太字は、opmn.xmlファイルでパラメータを置く位置を示しています。

<process-type id="OC4J_SECURITY" module-id="OC4J">
  <environment>
    <variable id="DISPLAY" value="sun1.example.com:0.0"/>
    <variable id="LD_LIBRARY_PATH" value="/private/ora1012/OraHome1/lib"/>
  </environment>
  <module-data>
    <category id="start-parameters">
      <data id="java-options" value="-server -Djazn.debug.log.enable=true
      -Djava.security.policy=/private/ora1012/OraHome1/j2ee/OC4J_SECURITY/
      config/java2.policy -Djava.awt.headless=true -Xmx512m
      -Djava.awt.headless=true"/>
      <data id="oc4j-options" value="-properties"/>
    </category>
    <category id="stop-parameters">
      <data id="java-options" value="-Djava.security.policy=/private/ora1012/      
      OraHome1/j2ee/OC4J_SECURITY/config/java2.policy  -Djava.awt.headless=true"/>
    </category>

ログは、$ORACLE_HOME/opmn/logsにあるOC4J~OC4J_SECURITY~default_island~1ファイルに書き込まれます。


注意:

保護されたアプリケーションにWindowsネイティブ認証でアクセスすると、Webブラウザは、Oracle Enterprise Managerによって記録される「401 - Unauthorized」エラーを自動的に返します。これは通常の動作で、無視してもかまいません。



関連項目:

  • Note: 283268.1: 「Troubleshooting Oracle Application Server Single Sign-On Windows Native Authentication」(My Oracle Support(旧MetaLink: http://metalink.oracle.com/)で参照可能)

  • Windowsネイティブ認証のエラーの詳細は、Oracle Enterprise Single Sign-On Suite Plus管理者ガイドのトラブルシューティングに関する章の、Windowsネイティブ認証エラーの問題と解決策に関する説明を参照してください。


E.6.2 Oracleバックエンド・ディレクトリの使用不可期間後の変更の同期

Oracleバックエンド・ディレクトリが利用できない場合、変更はMicrosoft Active Directoryに格納されます。Oracleバックエンド・ディレクトリでの接続のリストア後、Oracle Password Filter for Microsoft Active Directoryはこれらのエントリを同期化しようとします。SearchDeltaSizeパラメータによって、同期サイクルの各反復中に処理される増分変更の数が決定されます。デフォルトでは、SearchDeltaSizeパラメータには500という値が割り当てられます。Oracleバックエンド・ディレクトリが利用できない期間によっては、SearchDeltaSizeの500というデフォルト値は、同期化されていないすべての変更に遡及するには小さすぎる場合があります。この問題を解決するには、Microsoft Active Directoryの既存のインポート同期プロファイルをコピーし、SearchDeltaSizeパラメータに割り当てられる値を変更することによって、遡及プロファイルを作成する必要があります。

遡及同期プロファイルを作成するには、次のようにします。

  1. Oracle Directory Integration Platformを停止します。

  2. manageSyncProfilesコマンドのdeactivate操作を使用して、Microsoft Active Directoryのインポート同期プロファイルを非アクティブ化します。

  3. manageSyncProfiles copyコマンドを使用してインポート同期プロファイルをコピーし、遡及同期プロファイルを作成します。次に例を示します。

    manageSyncProfiles copy -h myhost.mycompany.com -p 7005 -D weblogic
    -pf existing_import_sync_profile -newpf name_of_new_catchup_sync_profile 
    
  4. manageSyncProfilesコマンドのactivate操作を使用して、元のMicrosoft Active Directoryのインポート同期プロファイルをアクティブ化します。

  5. Oracle Directory Integration Platformを起動します。

  6. 新しいドメイン・コントローラのルートDSEで、現行の最大のUSNChanged値(ルートDSEのhighestCommittedUSN属性の属性値)を検索することにより、highestCommittedUSNの現行値を取得します。

    ldapsearch -h host -p port -b "" -s base -D binddn -q \
     DN "objectclass=*" highestCommittedUSN
    

    注意:

    パスワードを要求されます。


  7. 100を超えるエントリ(ただし200未満)を取得するまで、次のldapsearchコマンドを試行します。200を超えるエントリを取得すると、内部バッファのオーバーランを招くことがあります。

    ldapsearch -v -h adhost -p adport -D administrator@domain -q \
    -b cn=users,dc=acme,dc=com -s sub \
    "(&(objectclass=*)(usnChanged>=delta)(&(usnChanged<=highestCommittedUSN)))" dn
    

    注意:

    パスワードを要求されます。


    たとえば、次のコマンドにより、デフォルトの検索デルタ・サイズ500を使用して検索を実行します。

    ldapsearch -v -h adhost -p adport -D administrator@domain -q \
    -b cn=users,dc=acme,dc=com -s sub  \
    "(&(objectclass=*)(usnChanged>=55010)(&(usnChanged<=55510)))" dn
    

    注意:

    パスワードを要求されます。


  8. 次の内容を指定したprofile_config.txtというテキスト・ファイルを作成します。

    [INTERFACEDETAILS]
    Reader: oracle.ldap.odip.gsi.ActiveChgReader
    SkipErrorToSyncNextChange: true
    SearchDeltaSize: 100000
    UpdateSearchCount: 100
    

    注意:

    また、同期中に変更を処理するときにOracle Directory Integration Platformでエラーを処理する方法を決定するために、SkipErrorToSyncNextChangeパラメータを設定することもできます。同期プロファイルのSkipErrorToSyncNextChangeパラメータの詳細は、「拡張」の項を参照してください。


  9. manageSyncProfilesコマンドのupdate操作を使用して、profile_config.txtファイルを遡及同期プロファイルにロードします。

    例:

    manageSyncProfiles update -h MYOIDHOST -p 7005 -D weblogic -pf
    ActiveChgImp-ad-catchup -params "odip.profile.configfile
    /home/oracle/product/OracleIDM/ldap/odi/conf/profile_config.txt"
     
    
  10. manageSyncProfilesコマンドのactivate操作を使用して、遡及同期プロファイルをアクティブ化します。


    注意:

    元のMicrosoft Active Directoryのインポート同期プロファイルが遡及同期プロファイルとともに実行され続けていることを確認してください。


  11. 遡及同期プロファイルを12時間以上実行します。バックログされた変更がすべて同期化された後、manageSyncProfilesコマンドのdeactivate操作を使用して遡及同期プロファイルを非アクティブ化します。

E.7 追加情報

My Oracle Support(旧MetaLink(http://metalink.oracle.com))には、その他の解決策も記載されています。そこでも問題の解決策が見つからない場合は、サービス・リクエストを登録してください。


関連項目:

Oracle Application Serverのリリース・ノート: Oracle Technology Network(http://www.oracle.com/technology/documentation/index.html)で入手可能です。