この章では、Oracle Internet Directoryに関連する問題について説明します。次のトピックが含まれます:
この項では、一般的な問題および回避策について説明します。次のトピックが含まれます:
第2.1.7項「Oracle Internet Directoryの10.1.4.3から11.1.1.9.0へのアップグレードがAIXの構成中に失敗する」
2.1.10項「Oracle Internet DirectoryがISMを使用するSolaris SPARCシステム上で起動できない」
2.1.13項「Oracle Unified Directory 11.1.2.0 orclguid
属性がサーバー・チェーンにマップされない」
Oracle Internet Directoryでは、集合属性の部分文字列フィルタをサポートしていません。たとえば、次の部分文字列フィルタはサポートされていません。
tenantguid=*234*
ただし、同等のフィルタ、tenantguid=12345
が部分文字列属性でサポートされています。
lastchangenumber
属性での検索が1つの属性で同時に機能するldapsearch
をrootDSEで実行し、lastchangenumber
属性およびその他の属性をフェッチすると、lastchangenumber
が取得されません。
たとえば、次に示すコマンドを実行すると、lastchangenumber
属性は取得されません。
ldapsearch -p port -D "cn=orcladmin" -w password -b "" -s base "objectclass=*" changelog lastchangenumber
この問題を回避するには、次のようにして、rootDSE上でlastchangenumber
属性のみにldapsearch
を実行します。
ldapsearch -p <port> -h <hostname> -b ' ' -s base '(objectclass=*)' lastchangenumber lastchangenumber=4714
検索フィルタに集合属性式のみが含まれる場合、AND(&)演算を実行すると、サーバーは期待される結果を返しません。
たとえば、次のコマンドを集合属性のみで実行し、AND操作を実行すると、サーバーは期待される結果を返しません。
ldapsearch -b 'cn=u1,cn=collandbug' '&(description=coll1 desc) (description=coll2 desc)' dn
いくつかのOracle Databaseバージョン、たとえば、10.1.0.5.0rec.jul10、10.2.0.4.5.psu、10.2.0.5.1psu、11.1.0.7.4psuおよび11.2.0.1.2psuでは、Oracle Internet Directoryでジョブを削除する際の障害を修正するために、パッチが必要です。
このパッチを適用していない場合、パージ・ジョブが正しく機能しません。また、次の現象が発生する可能性があります。
Oracle Internet Directoryの変更ログがパージされず、パージ・ログにORA-23421エラーが表示されます。
変更ログのパージ・ジョブを実行する際にorclpurgenow
を1に設定するとハングします。
リストしたOracle Databaseのいずれかのバージョンを使用し、このようなジョブ削除の問題を経験している場合、最新のパッチ・セット更新(PSU)を使用するOracle Databaseに適用すると、RDBMS bug 9294838が解決します。RDBMSパッチを使用するデータベースに適用してください。 Oracle Internet Directoryをインストールした後に、パッチを適用できます。
「スキーマ」タブでカスタム属性とカスタムobjectclassを作成し、索引付けされたカスタム属性を選択します。次に、「データ・ブラウザ」タブでobjectclass="custom object class"
のエントリを作成する場合、カスタム属性フィールドに必須値を入力できません。
この問題に対する回避策はありません。
ODSMで、Oracle Directory Server Enterprise Edition (ODSEE)とのサーバー・チェーンをバックエンドとして設定すると、次の問題が発生します。
ODSMを使用してエントリを作成すると、ODSMはチェーンを介してリモート・サーバーにエントリを追加するふりをします。しかし、エントリはリモート・サーバーであるODSEEには追加されません。
前述のエントリをリモート・バックエンドに直接追加し、「データ・エクスプローラ」タブを使用して親エントリに移動してから、同じエントリをLDIFにエクスポートすると、重複エントリが表示されます。
AIXでOracle Internet Directoryを10.1.4.3から11.1.1.9.0にアップグレードする場合、この問題が発生します。アップグレードは構成中に失敗し、次のエラーが発行されます。
javax.net.ssl.SSLException: Received fatal alert: illegal_parameter
この問題を回避するには、次の例に示すように、Javaオプションを追加して、Oracle Internet Directory 11.1.1.9.0の構成中にECDH暗号化を無効化します。
ORACLE_HOME
/config.sh -Doracle.ldap.odi.sslsocketfactory.disable-ecc=true
ODSMインタフェースは、Internet Explorer 7で説明されているように表示されないことがあります。
たとえば、「ログアウト」リンクが表示されないことがあります。
これが問題の原因となる場合は、Internet Explorer 8または9にアップグレードするか、別のブラウザを使用してください。
クローニングしたOracle Internet Directory環境では、好ましくないホスト名はエラー、失敗またはパフォーマンスの低下を引き起こす可能性があります。
Oracle Internet Directoryインスタンスをクローニングして、クローニングされたターゲット・インスタンスがソース・インスタンスから好ましくないホスト名を取得した場合に、この問題が発生する可能性があります。このようなホストには、ファイアウォールの外にあるものや、そうでない場合はターゲット・インスタンスにアクセスできないものがあります。
クローニングされたOracle Internet Directoryインスタンスではクラスタ環境内にあることが前提となっており、通知および他の変更のために好ましくないホストにアクセスしようとします。しかし、クローニングされたインスタンスはいくつかのホストにはアクセスできず、その後失敗してエラーを返すか低速で実行されます。
たとえば、クローニングされたOracle Internet Directoryターゲット・インスタンスに対する次の操作の実行中に、この問題が発生する可能性があります。
Oracle Virtual Machine (VM)を作成するためにfaovmdeploy.sh createTopology
コマンドを実行
異なるOracle Virtual Machine内でEnterprise Managerエージェントをデプロイ
この問題を修正するには、クローニングされたOracle Internet Directoryインスタンスから、好ましくないホスト名を次のように削除します。
必要な環境変数を設定します。次に例を示します。
export ORACLE_INSTANCE=/u01/oid/oid_inst export ORACLE_HOME=/u01/oid/oid_home export PATH=$ORACLE_HOME/bin:$ORACLE_INSTANCE/bin:$PATH export TNS_ADMIN=$ORACLE_INSTANCE/config
Oracle Databaseに接続し、好ましくないOracle Internet Directoryホスト名を持つエントリを削除します。たとえば、次の問合せで、sourceHostnameの好ましくないホスト名を置き換えます。
sqlplus ods@oiddb delete from ods_shm where nodename like '%sourceHostname%'; delete from ods_shm_key where nodename like '%sourceHostname%'; delete from ods_guardian where nodename like '%sourceHostname%'; delete from ods_process_status where hostname like '%sourceHostname%'; commit;
クローニングされたOracle Internet Directoryコンポーネントを停止してから再起動します。次に例を示します。
opmnctl stopproc ias-component=oid1 opmnctl startproc ias-component=oid1
好ましくないOracle Internet Directoryホスト名を持つcn
エントリを検索します。次に例を示します。
ldapsearch -h oid_host -p oid_port -D cn=orcladmin -w admin_password -b "cn=subregistrysubentry" -s sub "objectclass=*" dn cn=oid1_1_hostName1,cn=osdldapd,cn=subregistrysubentry cn=oid1_1_hostName2,cn=osdldapd,cn=subregistrysubentry cn=oid1_1_myhost.example.com,cn=osdldapd,cn=subregistrysubentry
前の手順の結果から、好ましくないホスト名を持つエントリを削除します。次に例を示します。
ldapdelete h oid_host -p oid_port -D cn=orcladmin -w admin_password "cn=oid1_1_hostName1,cn=osdldapd,cn=subregistrysubentry" ldapdelete h oid_host -p oid_port -D cn=orcladmin -w admin_password "cn=oid1_1_hostName2,cn=osdldapd,cn=subregistrysubentry"
好ましくないホスト名が削除されたことを確認します。次に例を示します。
ldapsearch h oid_host -p oid_port -D cn=orcladmin -w admin_password -b "cn=subregistrysubentry" -s sub "objectclass=*" dn cn=oid1_1_myhost.example.com,cn=osdldapd,cn=subregistrysubentry
関連項目: 『Oracle Fusion Middleware管理者ガイド』のOracle Fusion Middlewareのクローニングに関する説明。 |
Oracle Internet Directoryは、Intimate Shared Memory (ISM)を使用する次のOracle Solaris SPARCシステム上で起動できません: 5.11 11.1 sun4v sparc sun4v
この問題の回避策として、次の手順に示されるように値を設定します。
Oracle Internet Directoryについて、オペレーティング・システムの許容される物理ロック・メモリーの合計(project.max-locked-memory
)を2GB以上に設定して、値がサポートされるページ・サイズと合うようにします。pagesize -a
コマンドは、Solarisシステムのサポートされるすべてのページ・サイズをリストします。
orclecachemaxsize
属性をproject.max-locked-memory
よりも小さくなるように設定し、その値がOSによってサポートされるページ・サイズと合うことを確認します。たとえば、値を256MBに設定します。
次の手順では、Oracle Internet Directoryサービスは"oracle"という名前のオペレーティング・システム・ユーザーによって管理されていると仮定されています。
Solaris SPARCシステムにルート・ユーザーとしてログインします。
OIDユーザーのプロジェクト・メンバーシップを確認します。
OIDユーザーがデフォルト・プロジェクトに属する場合、次のようになります。
2GB以上に設定された最大ロック・メモリーの値で新しいプロジェクトを作成し、OIDユーザーを新しく作成したプロジェクトと関連付けます。Solaris 10および11でプロジェクトID 3はデフォルト・プロジェクトを表します。次に例を示します。
# id -p oracle uid=2345(oracle) gid=529(dba) projid=3(default) # projadd -p 150 -K "project.max-locked-memory=(priv,2G,deny)" oidmaxlkmem # usermod -K project=oidmaxlkmem oracle
リソース・コントロールの値project.max-locked-memory
が、予期したとおり2GBに設定されたことを確認します。次に例を示します。
# su - oracle $ id -p oracle uid=2345(oracle) gid=529(dba) projid=150(oidmaxlkmem) $ prctl -n project.max-locked-memory -i project 150 project: 150: oidmaxlkmem NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT project.max-locked-memory privileged 2.00GB - deny - system 16.0EB max deny -
OIDユーザーが非デフォルト・プロジェクトに属する場合、次のようになります。
対応するプロジェクトを変更してproject.max-locked-memory
リソース・コントロールを含め、値を2GB以上に設定します。次に例を示します。
# id -p oracle uid=2345(oracle) gid=529(dba) projid=125(oraproj) # projmod -a -K "project.max-locked-memory=(priv,2G,deny)" oraproj
リソース・コントロールの値project.max-locked-memory
が、予期したとおり2GBに設定されたことを確認します。次に例を示します。
# projects -l oraproj oraproj projid : 125 comment: "" users : (none) groups : (none) attribs: project.max-locked-memory=(priv,2147483648,deny) project.max-shm-memory=(priv,34359738368,deny) # su - oracle $ id -p uid=2345(oracle) gid=529(dba) projid=125(oraproj) $ prctl -n project.max-locked-memory -i project 125 project: 125: oraproj NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT project.max-locked-memory privileged 2.00GB - deny - system 16.0EB max deny -
エントリ・キャッシュ最大サイズ(orclecachemaxsize
属性)を、OSによって許可される最大ロック・メモリー・サイズよりも小さい値でOSがサポートするページ・サイズに合う値に設定します。
たとえば、SQL*Plusを使用して値を256MBに設定します。
sqlplus ods@oiddb update ds_attrstore set attrval='256m' where entryid=940 and attrname='orclecachemaxsize'; commit;
config.sh
スクリプトを実行してOracle Internet Directoryを構成します。
11g Oracle Enterprise Manager Fusion Middleware Controlを使用してOracle Internet Directoryのカスタム監査ポリシー設定を行い、監査カスタム・イベントを「失敗のみ」に選択すると、監査ログは生成されず、失敗イベントの監査プロセスは失敗します。その後、「監査ポリシー設定」が「低」、「中」、「高」など、別の値に変更されても、その他の監査イベントはログに記録されません。
Enterprise Managerを介して再度監査機能を使用するには、デフォルト・ポリシーを選択するか、すべて失敗以外のカスタム・イベントを含むポリシーを選択してから、Oracle Internet Directoryサーバー・プロセスを再利用します。
また、ldapmodify
などのLDAPコマンドライン・ツールを使用して、カスタム監査ポリシーを設定することもできます。詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のコマンドラインからの監査の管理に関する項を参照してください。
objectClass
が参照する必須のattributeTypes
の削除が成功するOracle Internet Directoryスキーマにある、このスキーマのobjectClass
が参照している必須のattributeTypes
を削除すると、エラーが返されず、attributeTypes
が正常に削除されます。この問題は、必須のattributeTypes
を使用しているobjectClass
を使用して作成したDNエントリでも発生します。必須属性がスキーマから削除されると、何の通知もなくその属性はDNエントリからなくなります。
orclguid
属性がサーバー・チェーンにマップされないOracle Unified Directory 11.1.2.0でOracle Internet Directoryサーバー・チェーンを構成してから、ユーザーを検索する場合、検索結果からorclguid
属性が欠落します。
orclguid
属性が欠落するのは、Oracle Unified Directoryでiplanetのデフォルト設定(cn=oidsciplanet,cn=oid server chaining,cn=subconfigsubentry
)を使用し、デフォルトのiplanetマッピングではorclguid
がマップされないためです。
Fusion Middleware ControlからODSMを起動し、新規ODSMを選択すると、ブラウザ・ウィンドウが使用できなくなることがあります。たとえば、ウィンドウが繰り返しリフレッシュしたり、空白ページとして表示されたり、ユーザー入力を受け付けなかったり、nullポインタ・エラーを表示します。
回避策として、URL: http://
host
:
port
/odsm
に移動して、hostおよびportでODSMが実行されている場所を指定します(例: http://myserver.example.com:7005/odsm
)。これにより、ODSMウィンドウを使用してサーバーにログインできるようになります。
Oracle Internet DirectoryでOracle Database 11g リリース1 (11.1.0.7.0)を使用している場合、bulkmodify
操作の実行中にORA-600
エラーが表示される場合があります。この問題を修正するには、Oracle Bug#7019313およびOracle Bug#7614692用の修正をOracle Databaseに適用します。
不具合により、Oracle Internet Directoryでは、トルコ語文字セットに含まれる点付きの大文字のIを正しく処理できません。そのため、Oracle Directory Services Managerまたはコマンドライン・ユーティリティで問題が発生する可能性があります。
OPSSの1レベルldapsearch
操作のSQLでフィルタorcljaznprincipal=
value
および必須属性を使用すると、DB CPUパーセンテージが過度に高くなる可能性があります。この検索パフォーマンスがマシンおよび他のプロセスのパフォーマンス全体に影響する場合、Oracle Databaseで次の手順を実行することにより、問題を軽減できます。
Oracle DatabaseにユーザーODS
としてログインし、次のSQLを実行します。
BEGIN DBMS_STATS.GATHER_TABLE_STATS(OWNNAME=>'ODS', TABNAME=>'CT_ORCLJAZNPRINCIPAL', ESTIMATE_PERCENT=>DBMS_STATS.AUTO_SAMPLE_SIZE, CASCADE=>TRUE); END; /
ALTER SYSTEM文を使用して共有プールをフラッシュします。詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
この項では、構成に関する問題およびその回避方法について説明します。次のトピックが含まれます:
Oracle Internet DirectoryをSSLモードで構成する際、SSLv3が無効になっている場合に、TLSモードのみを有効にしようとすると、Oracle Internet Directory構成はハングします。これが発生するのは、orclsslciphersuite
属性にサポートされていない暗号化スイートが移入されている場合です。
これを回避するには、orclsslciphersuite
属性からサポートされていない暗号化スイートを削除します。サポートされる暗号化スイート・リストの詳細は、Oracle Fusion Middleware Oracle Internet Directory管理者ガイドのサポートされる暗号化スイートに関する項を参照してください。
さらに、Oracle Internet DirectoryをSSLモードで構成する場合は、SSLv3を完全に無効にして、TLSを有効にする必要があります。TLSのみを有効にする(およびSSLv3を無効にする)場合は、orclcryptoversion
属性の値を28
に変更する必要があります。この値はTLS 1.0、TLS 1.1またはTLS 1.2を参照します。詳細は、Oracle Fusion Middleware Oracle Internet Directory管理者ガイドのサポートされるプロトコル・バージョンに関する項を参照してください。
ldapmodify
コマンドを実行して、次のようにorclcryptoversion
の値を28
に更新します。
ldapmodify -D "cn=orcladmin" -q -p portNum -h hostname -f ldifFile
ldifFile
には、次が含まれます。
dn: cn=oid1,cn=osdldapd,cn=subconfigsubentry changetype: modify replace: orclcryptoversion orclcryptoversion: 28
EMから、「OID」->「管理」->「サーバー・プロパティ」ページにナビゲートすると、「一般」タブの「SSL設定の変更」リンクに「プロトコルのバージョン」がv1の1つのみ表示されます。TLSv1.1、TLSv1.2プロトコルおよびそれに対応する暗号を構成する方法がありません。
回避策としては、ldapmodify
コマンドを使用してTLSプロトコルを構成します。
詳細は、『Fusion Middleware Oracle Internet Directory管理者ガイド』のLDAPコマンドを使用したSSLの構成に関する項を参照してください。
EMのDirectory Service Managerから、「セキュリティ」タブを選択すると、ポップアップ・ウィンドウで「セキュリティ」タブが開きますが、その直後、そのページで次のようなエラーがスローされます。
「解決できないエラーが発生しました。詳細は管理者に連絡してください」
注意: この問題は、断続的に発生します。 |
回避策として、エラー画面が表示されたら、「戻る」をクリックしてODSMに戻ります。同じページからさらにナビゲーションするとエラーは発生しません。
この項では、ドキュメントの訂正箇所を示します。次のトピックが含まれます:
DirectoryAdminGroup
グループのダイレクト・メンバーである必要がある『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の12.6項のスーパーユーザー権限を持つ別のアカウントの作成に関する説明に、すべてのOracle Directory Services Manager (ODSM)機能を使用するには新しいスーパーユーザー・アカウントはDirectoryAdminGroup
グループのダイレクト・メンバーである必要があることが記載されていません。
「セキュリティ」および「拡張」タブを含むすべてのODSM機能を使用するには、新しいスーパーユーザー・アカウントはDirectoryAdminGroup
グループのダイレクト・メンバーである必要があります。新しいスーパーユーザー・アカウントは、DirectoryAdminGroup
グループのメンバーとなるグループのメンバーであることはできません。この構成では、スーパーユーザーはODSMの「ホーム」、「スキーマ」および「データ・ブラウザ」タブにのみアクセスできます。
『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』には、センシティブ属性のリストに暗号化属性を追加する場合、Oracle Internet Directoryサーバー・インスタンスを再起動し、新しい属性がセンシティブ属性の新しいリストに追加されてサーバーによって認識されるようにする必要があることが記載されていません。
注意: 『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の表28-1のorclencryptedattributesに格納されるセンシティブ属性に記載されている属性は、Oracleによる使用のみが意図されています。Oracleサポートによって要求されないかぎり、この表に示される属性の追加または変更は行わないでください。 |
詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の「データ・プライバシの構成」の章を参照してください。
Oracle Internet Directory管理者ガイドにも管理者ガイドにも、Oracle Internet Directory SSLクライアントおよびサーバー認証の設定方法が記載されていません。この情報は、次の場所にあるMy Oracle Supportのノート1311791.1に記載されています。
『Oracle Identity Managementスタート・ガイド』からリンクされているアイデンティティ管理のチュートリアルの第3章「Oracle Internet Directoryレプリケーション」から重要な情報が欠落しています。
特に、新しいコンシューマ・ノードが空でない限り、この指示は実行されません。新しいコンシューマ・ノードに事前ロードされたデータがある場合、レプリケーション・ログに様々な競合解決および無効な属性名形式のメッセージが表示されます。
詳細は、Oracle Internet Directory管理者ガイドの40.1.7 LDAPベースのレプリケーションの構成ルールに関する項を参照してください。