この章では、Oracle製品に関連する問題について説明します。内容は次のとおりです。
この項では、一般的な問題および回避方法について説明します。内容は次のとおりです。
28.1.3項「新規Oracle Internet Directoryインスタンスでレプリケーション・サーバーの起動に失敗する」
28.1.6項「データベースSIDに含まれる大文字によってFusion Middleware Controlでレプリケーション情報の表示に問題」
Fusion Middleware ControlからODSMを起動し、新規ODSMを選択すると、ブラウザ・ウィンドウが使用できなくなることがあります。たとえば、ウィンドウが繰り返しリフレッシュしたり、空白ページとして表示されたり、ユーザー入力を受け付けなかったり、nullポインタ・エラーを表示します。
回避方法として、URL: http://
host
:
port
/odsm
に移動します。ここで、hostおよびportには、http://myserver.example.com:7005/odsm
のようにODSMが実行されている場所を指定します。その後ODSMウィンドウを使用してサーバーにログインします。
値の一意性が強制される属性の名前を指定する際、属性名に大文字が含まれると、操作が失敗します。これは、ODSMを使用してもLDAPツールを使用しても起こります。実際は索引付けされていても、属性が索引付けされていないというサーバーからのメッセージが表示される場合もあります。
回避方法として、値の一意性が強制される属性を指定する場合、常に小文字の名前を使用します。
既存のインスタンスと同じOracle Databaseを使用する新規Oracle Internet Directoryインスタンスを作成し、新規インスタンスでレプリケーション・サーバーを起動しようとすると、レプリケーション・サーバーが起動に失敗します。レプリケーション・サーバーのウォレットに無効なパスワードが含まれているためです。remtoolを使用してウォレット・パスワードを変更する必要があります。次の手順を実行します。
新規インスタンスがインストールされているホストに接続します。
ORACLE _HOMEおよびORACLE_INSTANCE環境変数を設定します。
次を実行します。
remtool -pchgwalpwd -bind newinstance_host:port/replication_dn_pwd
ここで、replication_dn_pwdは、デフォルトではODSスキーマ・パスワードと同じです。
レプリケーション・サーバーを起動します。
Oracle Enterprise Manager Fusion Middleware Controlのレプリケーション・ウィザードの使用時、「リフレッシュ」をクリックするとエラーになることがあります。このエラーを解決するには、ウィザードからログアウトし、再度ログインします。
Oracle Enterprise Manager Fusion Middleware Controlのレプリケーション・ウィザードを使用してマルチマスター・レプリケーションを設定する際、「レプリカ」ページの最初のエントリとしてプライマリ・ノードのデフォルト情報が表示されます。不具合のため、ウィザードのこのエントリを削除できます。そうしないでください。プライマリ・ノードを削除すると、後続のウィザード・ページで矛盾した結果になります。
レプリカ・サブエントリのreplicaid
値には、OIDhost_DBSIDという形式があります。ここで、DBSIDは、Oracle Internet Directoryで使用するOracle DatabaseのSIDです。不具合のため、replicaid
値のSID部分に大文字が含まれる場合、Oracle Enterprise Manager Fusion Middleware Controlでレプリケーション情報が適切に表示されません。具体的には、レプリケーション承諾がある場合でも、Oracle Internet Directoryホームページにレプリケーション承諾が表示されず、共有パラメータページの「レプリケーション」タブがグレー表示されます。
回避方法として、SIDには小文字のみを使用します。SIDに大文字を含むデータベースをすでに作成している場合、replicaid
のSID部分の文字がすべて小文字になるようレプリカ・サブエントリのDNを変更する必要があります。コマンド構文は次のとおりです。
ldapmoddn -h OIDhost -p OIDport -b "orclreplicaid=OIDhost_oldDBSID,cn=replication configuration" -R "orclreplicaid=OIDhost_newDBSID" -r
たとえば、次のコマンドでは、レプリカ・サブエントリDNのreplicaid
値のSID部分をDB456
からdb456
に変更します。
ldapmoddn -h Linux123 -p 3060 \ -b "orclreplicaid=Linux123_DB456,cn=replication configuration" \ -R "orclreplicaid=Linux123_db456" -r
WindowsでOracle Internet DirectoryのSSLポートが10gのSSLサーバー認証モードに構成されている場合、11gリリース1(11.1.1)へのアップグレード前に、SSL認証なしモードに変更する必要があります。Oracle Directory Integration PlatformがSSLサーバー認証モードを使用してOracle Internet DirectoryのSSLポートに接続されている場合、11gリリース1(11.1.1)へのアップグレード前にSSL認証なしモードを使用してOracle Internet Directoryに接続するようOracle Directory Integration Platformを再構成する必要もあります。詳細は、10g(10.1.4.0.1)のドキュメント・ライブラリの『Oracle Internet Directory管理者ガイド』および『Oracle Identity Management統合ガイド』を参照してください。
アップグレード後、Oracle Internet DirectoryとOracle Directory Integration Platformの両方をウォレットを使用するSSLサーバー認証モードに再構成します。詳細は、11gリリース1(11.1.1)ライブラリの『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の第25章「Secure Sockets Layer(SSL)の構成」および『Oracle Fusion Middleware Oracle Identity Management統合ガイド』の第4章「Oracle Directory Integration Platformの管理」を参照してください。
これらの変更は、LinuxまたはUNIXベースのオペレーティング・システムでは必要ありません。
属性が索引付けされていない場合、属性を検索できません。等価一致ルールがない場合、属性を索引付けできません。ただし、不具合のため、属性から等価一致ルールを削除した場合にODSMから警告が表示されません。属性を索引付けする必要がある場合は、そうしないでください。
この項では、構成に関する問題およびその回避方法について説明します。内容は次のとおりです。
Oracle Internet Directoryサーバー・チェーンでは、次の外部サーバーがサポートされます。
Microsoft Active Directory
Sun Java System Directory Server(以前のSunONE iPlanet)
Novell eDirectory
11gリリース1(11.1.1)の出荷時、コンテナcn=OID Server Chaining,cn=subconfigsubentry
にはeDirectoryに対するエントリがありません。eDirectoryに対するサーバー・チェーンを構成するには、cn=oidscedir,cn=OID Server Chaining,cn=subconfigsubentry
を作成する必要があります。このエントリの作成の詳細は、My Oracle Support(http://metalink.oracle.com
(以前のMetaLink))のノート821214.1.1を参照してください。
Oracle Internet Directoryを以前のバージョンから11gリリース1(11.1.1)にアップグレードする場合、属性orclmaxldapconns
がインスタンス固有の構成エントリから失われます。属性が失われたため、サーバー・プロセスごとの最大同時接続数は常にデフォルト値の1024
と同じです。この値を更新したり、検索でリストできません。
回避方法は、スキーマに属性orclmaxldapconns
を作成し、インスタンス固有の目的の構成エントリに値を設定します。次の手順を実行します。
次の内容のLDIFファイルを作成します。
dn: cn=subschemasubentry changetype: modify add: attributetypes attributetypes: ( 2.16.840.1.113894.1.1.611 NAME 'orclmaxldapconns' EQUALITY integerMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.27' SINGLE-VALUE )
次のコマンドを実行します。
ldapmodify -D cn=orcladmin -q -p portNum -h hostname -f ldifFile
インスタンス固有の目的の構成エントリにorclmaxldapconns値を設定します。たとえば、コンポーネントoid1
でorclmaxldapconns
を2000
に設定するには、次の内容のLDIFファイルを作成します。
dn: cn=oid1,cn=osdldapd,cn=subconfigsubentrychangetype: modify replace: orclmaxldapconns orclmaxldapconns: 2000
ステップ2に示すldapmodify
コマンドを実行します。
この問題は、アップグレードしたディレクトリでのみ起こり、新規インストールでは起こりません。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の「参照整合性の構成」に、参照整合性を有効にしようとしてエラーになった場合、oiddiag
を使用してDIT内の違反を特定し、修正するよう記載されています。ただし、oiddiag
でDITに重複エントリがあるとレポートされても、LDAPツールで重複がリストされないことがあります。その場合、問題の修正にLDAPツールを使用できません。この状況になった場合、SQL*Plusを使用してエントリを削除する必要があります。次の手順を実行します。
同じOracle Databaseに接続されている現在実行中のすべてのOracle Internet Directoryインスタンスを停止します。
$ORACLE_INSTANCE/bin/opmnctl stopall
次のSQL*Plusコマンドを実行して重複するDNを削除します。
$ sqlplus /nolog SQL> connect / as sysdba SQL> delete from ct_orclnormdn where attrvalue like '%cn=osdldapd,cn=subregistrysubentry'; SQL> commit;
同じOracle Databaseに接続されているすべてのインスタンスでOracle Internet Directoryを再起動します。
$ORACLE_INSTANCE/bin/opmnctl startall
この処理を行うと、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の「参照整合性の構成」に記載されているとおり、Oracle Enterprise Manager Fusion Middleware Controlを使用して参照整合性を有効にできます。
この項では、ドキュメントの訂正箇所を示します。内容は次のとおりです。
28.3.4項「Fusion Middleware Controlを使用してポートを変更した場合、登録を更新する必要はない」
28.3.5項「付録PのStopManagedWeblogic.shおよびStartManagedWeblogic.shのコマンドラインが不完全」
28.3.6項「『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のコンポーネント登録の更新に関する項に誤りがある」
28.3.7項「「パフォーマンス」タブの「サーバー・プロパティ」ページでorclmaxconnincacheのラベルの誤り」
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の付録O「Oracle Directory Services Managerキーストアの管理」で、ODSMのJavaキーストア・パスワードを取得するコマンドが正しくありません。正しいコマンド・シーケンスは次のとおりです。
$ORACLE_HOME/common/bin/wlst.sh connect() listCred( map="ODSMMap", key="ODSMKey.Wallet" )
connect()
コマンド後、WebLogicユーザー名とパスワード、およびサーバーURLが要求されます。サーバーURLの例はt3://stadd54:7001
です。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の付録O「Oracle Directory Services Managerキーストアの管理」には、証明書の期限切れに関する情報が含まれている必要があります。
証明書の有効期日をリストするには、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の付録O「Oracle Directory Services Managerキーストアの管理」に記載されているとおり、その内容をリストします。
証明書が期限切れの場合、付録Oに記載のとおり削除します。
証明書の期限切れの詳細は、Oracle Fusion Middlewareの管理者ガイドの第7章を参照してください。ただし、ODSMには、キーストアを管理するためのWebベースのユーザー・インタフェースは用意されていないことに注意してください。ODSMのキーストアは、keytool
を使用して管理する必要があります。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の第29章のユーザー・パスワード・ベリファイアおよびディレクトリに対する認証に関する項に、次の文が含まれています。
ディレクトリ・サーバーで、DSE属性userpassword
に指定されたハッシュ・アルゴリズムを使用してこのパスワードをハッシュします。
これは間違っています。正しくは次のようになります。
ディレクトリ・サーバーで、DSE属性orclcryptoscheme
に指定されたハッシュ・アルゴリズムを使用してこのパスワードをハッシュします。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』に、orclhostname
、orclnonsslport
、orclnonsslport
またはuserpassword
を変更したときは登録済OracleインスタンスでOracle Internet Directoryコンポーネントの登録を更新するよう記載されています。これは、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の第8章のopmnctl
を使用したOracleインスタンスのコンポーネント登録の更新に関する項、表9-1およびその他の箇所に記載されています。
これは、ldapmodify
またはODSMを使用してこれらの属性のいずれかを更新した場合、サーバーを再起動して登録を更新する必要があるという記載に変更する必要があります。ただし、Oracle Enterprise Manager Fusion Middleware Controlを使用してこれらの属性のいずれかを更新した場合、サーバーを再起動する必要はありますが、登録をリフレッシュする必要はありません。Fusion Middleware Controlでコンポーネントの登録が更新されます。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の付録P「Oracleスタックの停止および起動」で、コマンドstopManagedWebLogic.sh
およびstartManagedWebLogic.sh
のコマンドラインが不完全です。
WebLogic管理対象コンポーネントを停止するための完全なコマンドは次のとおりです。
MW_HOME/user_projects/domains/DOMAIN_NAME/bin/stopManagedWebLogic.sh \ {SERVER_NAME} {ADMIN_URL} {USER_NAME} {PASSWORD}
WebLogic管理対象コンポーネントを起動するための完全なコマンドは次のとおりです。
MW_HOME/user_projects/domains/DOMAIN_NAME/bin/startManagedWebLogic.sh \ SERVER_NAME {ADMIN_URL}
これらのスクリプトを実行する場合は次のようになります。
DOMAIN_NAME
のデフォルト値はIDMDomain
です。
SERVER_NAME
はOracle WebLogic管理対象サーバーの名前を表します。デフォルト値はwls_ods1
です。
スクリプトの実行時にオプションとして指定しないと、USER_NAME
およびPASSWORD
の値を要求されます。
スクリプトの実行時にオプションとして指定しないと、ADMIN_URL
の値は継承されます。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の第8章のopmnctl
を使用したOracleインスタンスのコンポーネント登録の更新に関する項に誤りがあります。
表8-1に、属性orclnonsslport
の行が2行あります。これらのいずれかはorclsslport
である必要があります。
opmnctl updatecomponentregistration
のコマンド構文および例で、オプション-port
は-Port
である必要があります。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の第33章「Oracle Internet Directoryのチューニングとサイズ設定」で、orclmaxconnincache
に関連付けられているOracle Enterprise Manager Fusion Middleware Controlのフィールドが、権限グループ・メンバーシップ・キャッシュ(ユーザー)のサイズとリストされています。これは、実際は「権限グループ・メンバーシップ・キャッシュ内のユーザーの数」です。
11gリリース1(11.1.1)で、インスタンス固有の構成エントリ属性orclsizelimit
のデフォルト値は10000
です。『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のいくつかの箇所で値が誤って1000
とリストされています。
第33章「チューニングとサイズ設定」
第40章「レプリケーションの管理と監視」
表Q-1「標準エラー・メッセージ」
『Oracle Fusion Middleware Oracle Identity Managementユーザー・リファレンス』の第4章「Oracle Internet Directoryレプリケーション管理ツール」でも誤ってリストされています。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の「動的および静的グループの管理」の概要に、ユーザーが属するグループを問い合せると、動的グループが結果に自動的に含まれるという注意があります。実際は、labeleduri
ベースの動的グループのみが結果に自動的に含まれます。CONNECT_BY
アサーションに基づく動的グループは、明示的に問い合せる必要があります。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の「データ・プライバシの構成」のDatabase Vaultに関する項に、Oracle Bug#7244497およびOracle Bug#7291157のパッチをダウンロードしてインストールするよう記載されています。これは、Oracle Database 11.1.0.7の場合のみ行う必要があります。この不具合は、Oracle Databaseの以降のバージョンで修正されています。
『Oracle Fusion Middleware Oracle Identity Managementアプリケーション開発者ガイド』の第11章の関数リターン・コードに関する表11-61に、誤りのあるコードおよび欠落しているコードがあります。次のコードを削除する必要があります。
表28-1 関数リターン・コード
名前 | リターン・コード | 説明 |
---|---|---|
ACCT_TOTALLY_LOCKED_EXCEPTION |
-14 |
ユーザー・アカウントがロックされている場合に |
AUTH_PASSWD_CHANGE_WARN |
-15 |
このリターン・コードは、今後は使用されない可能性があります。 |
次のコードを追加する必要があります。
表28-2 関数リターン・コード
名前 | リターン・コード | 説明 |
---|---|---|
ACCT_TOTALLY_LOCKED_EXCEPTION |
9001 |
ユーザー・アカウントがロックされている場合に |
PWD_EXPIRED_EXCEPTION |
9000 |
ユーザーのパスワードが期限切れの場合に |
PWD_EXPIRE_WARN |
9002 |
ユーザーのパスワードの期限切れが近い場合に |
PWD_MINLENGTH_ERROR |
9003 |
ユーザーのパスワードが |
PWD_NUMERIC_ERROR |
9004 |
|
PWD_NULL_ERROR |
9005 |
|
PWD_INHISTORY_ERROR |
9006 |
パスワードが以前使用されたことがあり、パスワード・ポリシーでパスワードの再使用が許可されていない場合に |
PWD_ILLEGALVALUE_ERROR |
9007 |
パスワードが不正な場合に |
PWD_GRACELOGIN_WARN |
9008 |
猶予期間ログインの間 |
PWD_MUSTCHANGE_ERROR |
9009 |
ユーザーがログイン時にパスワードを再設定する必要がある場合に |
USER_ACCT_DISABLED_ERROR |
9050 |
ユーザーのアカウントが無効になっている場合に |
第19章「ディレクトリ・スキーマの管理」の概要に、Oracle Directory Services Managerを使用して作成時にのみ属性を索引付けできると記載されています。また、既存の属性の索引付けにOracle Directory Services Managerを使用できないと記載されています。
この章のこの後にあるOracle Directory Services Managerを使用した既存の属性への索引の追加に関する項は、概要と矛盾するように見えます。
実際、これらの両方ともに、既存ではあるが、まだ使用されていない属性にODSMを使用して索引を追加できることを明記する必要があります。