Oracle Database プラットフォーム・ガイド 10gリリース2(10.2) for Microsoft Windows(64-bit)on Intel Itanium B25021-03 |
|
この章では、Microsoft Active DirectoryをLDAPディレクトリとして構成し、使用する方法について説明します。
この章の項目は次のとおりです。
この項では、Oracle DatabaseでMicrosoft Active DirectoryがLDAPディレクトリ・サーバーとしてどのように使用されるかについて説明します。
次の項目について説明します。
Active Directoryは、Windows 2003に組み込まれているLDAP準拠のディレクトリ・サーバーです。Active Directoryには、ユーザー、グループ、ポリシーなど、すべてのWindows 2003情報が格納されます。また、ネットワーク・リソース(データベースなど)に関する情報もActive Directoryに格納され、アプリケーション・ユーザーやネットワーク管理者はその情報を利用することができます。Active Directoryを使用すると、1回のログオンでネットワーク・リソースにアクセスできます。Active Directoryの対象は、1つの小規模コンピュータ・ネットワークのすべてのリソースから、複数の広域ネットワーク(WAN)のすべてのリソースにまでわたります。
Active DirectoryをサポートするOracle機能を使用する際は、ドメイン・コントローラに到達するすべてのTCP/IPホスト名形式を使用して、Active Directoryコンピュータに正常に到達できることを確認します。たとえば、ドメイン・コントローラのホスト名がドメインacme.com
のserver1
である場合、次のすべての形式を使用してそのコンピュータをpingできます。
Active Directoryでは、実行されている操作に応じて、これらのうちの1つ以上の形式で自身に対して照会を発行することがよくあります。どの形式でもActive Directoryコンピュータに到達できない場合は、なんらかのLDAP操作が失敗した可能性があります。
次のOracle Database機能は、Active Directoryとの統合をサポートするか、または特にそれを目的として設計されています。
Oracle Databaseでは、ディレクトリ・サーバーを利用するOracleネット・サービス・ディレクトリ・ネーミング機能を提供しています。この機能は、Microsoft Active Directoryとともに使用できるように設定されています。ディレクトリ・ネーミングにより、クライアントはLDAP準拠のディレクトリ・サーバー(Active Directoryなど)に一元的に格納された情報を利用して、データベースに接続できます。たとえば、tnsnames.ora
ファイルにすでに格納されているネット・サービス名はいずれもActive Directoryに格納できます。
Oracle Netコンフィギュレーション・アシスタントでは、ディレクトリ・サーバーの自動検出が可能です。Active Directoryをディレクトリ・サーバー・タイプとして選択した場合、Oracle Netコンフィギュレーション・アシスタントによりディレクトリ・サーバーの場所が自動検出され、関連するタスクが実行されます。
Active DirectoryのOracle Databaseサービス、ネット・サービス名およびエンタープライズ・ロールのエントリは、次の2つのWindowsツールで表示およびテストできます。
Windowsエクスプローラでは、コンピュータ上のファイル、ディレクトリ、ローカル・ドライブおよびネットワーク・ドライブの階層構造が表示されます。Oracle Databaseサービスおよびネット・サービス名オブジェクトの表示およびテストも可能です。
「Active Directoryユーザーとコンピュータ」は、ドメイン・コントローラとして構成されたWindowsサーバーにインストールされる管理ツールです。このツールを使用すると、Windows 2003のアカウントおよびグループを追加、変更、削除、編成でき、組織のディレクトリ内のリソースを公開できます。Windowsエクスプローラと同様、Oracle Databaseサービスおよびネット・サービス名オブジェクトの表示およびテストも可能です。さらに、アクセス・コントロールも管理できます。
Windowsエクスプローラおよび「Active Directoryユーザーとコンピュータ」では、Oracle Databaseサービスおよびネット・サービス名オブジェクトのプロパティ・メニューが拡張されています。これらのOracleディレクトリ・オブジェクトを右クリックすると、接続テストに関する次の2つの新しいオプションが表示されます。
「テスト」オプションは、最初に入力したユーザー名、パスワードおよびネット・サービス名で実際にOracle Databaseに接続できるかどうかをテストします。SQL*Plusと接続のオプションは、SQL*Plusを起動して、データベース管理やスクリプトの実行などができるようにします。
Active DirectoryのOracleディレクトリ・オブジェクト・タイプの記述が、より理解しやすいように改善されています。たとえば、図12-1の右側のペインの「種類」列から、sales
がOracleネット・サービス名であることがわかります。
Oracleのデータベース・ツールおよび構成ツールは、現在ログオンしているWindowsユーザーのログオン資格証明を使用して、ログオン資格証明を再入力しなくてもActive Directoryに接続できます。この機能には、次の2つの利点があります。
Oracle DatabaseおよびOracle Net Servicesがインストールされ、Active Directoryにアクセスできるように構成されている場合、図12-1に示すように「Active Directoryユーザーとコンピュータ」にはOracleディレクトリ・オブジェクトが表示されます。
表12-1では、図12-1に表示されているOracleディレクトリ・オブジェクトについて説明します。
オブジェクト | 説明 |
---|---|
|
作成したOracleコンテキストが属するドメインです。このドメイン(管理コンテキストとも呼ばれます)には、ディレクトリ・ネーミングをサポートする様々なOracleエントリが含まれます。Oracle DatabaseがActive Directoryと統合されている間は、Oracle Netコンフィギュレーション・アシスタントによりこの情報は自動的に検出されます。 |
|
Active Directoryツリーの最上位のOracleエントリです。Oracle Databaseサービスおよびネット・サービス名オブジェクトの情報が含まれます。すべてのOracleソフトウェア情報がこのフォルダに格納されます。 |
|
この例で使用されるOracle Databaseサービス名です。 |
|
Oracle製品情報用のフォルダです。 |
|
この例で使用されるネット・サービス名オブジェクトです。 |
|
Oracleセキュリティ・グループ用のフォルダです。詳細は、「Oracleディレクトリ・オブジェクト用のアクセス制御リスト管理」を参照してください。Oracle Enterprise Security Managerで作成されたエンタープライズ・ユーザーおよびロールもこのフォルダに表示されます。 |
ネット・ディレクトリ・ネーミングをActive Directoryとともに使用するには、特定のリリースのMicrosoftソフトウェアおよびOracleソフトウェアが必要です。また、Oracleスキーマ・オブジェクトおよびOracleコンテキストを作成する必要があります。これらの要件は、次の各項で説明します。
Oracle Databaseのエンタープライズ・ユーザー、ロールおよびドメインを管理するクライアント・コンピュータには、Oracle8i Clientリリース8.1.6以上および次のMicrosoft製品のいずれかが必要です。
データベースには、Oracle8i Databaseリリース8.1.6以上が必要です。これは、データベース・サービスをオブジェクトとしてActive Directoryに登録するために不可欠です。データベースでは、次のMicrosoft製品を使用できます。
クライアント・コンピュータとデータベースはどちらもWindows 2000ドメインのメンバーである必要があります。
ネット・ディレクトリ・ネーミング機能をActive Directoryとともに使用するには、Oracleスキーマ・オブジェクトを作成する必要があります。スキーマ・オブジェクトとは、Active Directoryに格納されるOracle Net ServicesおよびOracle Databaseエントリとその属性に関する一連のルールです。Active Directoryとともに使用するOracleスキーマ・オブジェクトの作成には、次の制限事項が適用されます。
Oracleスキーマ・オブジェクトを作成するには、次のようにします。
24のデフォルト言語すべてを受け入れるようにActive Directoryの表示が構成されていない場合は、Oracle Netコンフィギュレーション・アシスタントがActive Directoryをディレクトリ・サーバーとして構成している際に、Oracleスキーマ・オブジェクトの作成が失敗する可能性があります。Oracle Netコンフィギュレーション・アシスタントを実行してディレクトリ・アクセスの構成を完了する前に、次のようにコマンド・プロンプトに入力して、24言語すべての表示指定子が移入されているかを確認してください。
ldifde -p OneLevel -d cn=DisplaySpecifiers,cn=Configuration,domain context -f temp file
それぞれの意味は次のとおりです。
domain context
は、このActive Directoryサーバー用のドメイン・コンテキストです。 たとえば、dc=acme
、dc=com
などです。
temp file
は、出力先となるファイルです。
このコマンドのレポートに出力されたエントリが24個未満の場合でも、Oracle Netコンフィギュレーション・アシスタントは使用できます。しかし、レポートは、単に一部の言語の表示指定子が作成されなかったことを示しているのではなく、Oracleスキーマ・オブジェクトの作成が失敗したことを示しています。
Netコンフィギュレーション・アシスタントでは、Active DirectoryにOracleスキーマ・オブジェクトが作成される際に、Oracleエントリの表示指定子は作成されません。つまり、Active DirectoryのインタフェースにOracle Databaseエントリを表示することはできません。
Oracleスキーマ・オブジェクトの作成後に、次の手順に従って、Netコンフィギュレーション・アシスタントでOracleスキーマ・オブジェクトを作成したときに使用したものと同じWindowsユーザーIDを使用し、これらのエントリをActive Directoryに手動で追加できます。
ORACLE_HOME
¥ldap¥schema¥ad
に変更します。
adDisplaySpecifiers_us.sbs
をadDisplaySpecifiers_us.ldif
にコピーします。
adDisplaySpecifiers_other.sbs
をadDisplaySpecifiers_other.ldif
にコピーします。
.ldif
ファイルをそれぞれ編集し、すべての%s_AdDomainDN%
を、表示指定子のロード先となる特定のActive DirectoryのドメインDN(dc=acme
、dc=com
など)で置き換えます。
ldapmodify -h <ad hostname> -Z -f adDisplaySpecifiers_us.ldif ldapmodify -h <ad hostname> -Z -f adDisplaySpecifiers_other.ldif
<ad hostname>
は、表示指定子のロード先となるActive Directoryドメイン・コントローラのホスト名です。
ネット・ディレクトリ・ネーミング機能をActive Directoryとともに使用するには、Oracleコンテキストを作成する必要があります。Oracleコンテキストは、Active Directoryツリーの最上位のOracleエントリです。Oracle DatabaseサービスおよびOracleネット・サービス名オブジェクトの情報が含まれます。
Oracle Netコンフィギュレーション・アシスタントを使用すると、クライアント・コンピュータおよびOracle Databaseをディレクトリ・サーバーにアクセスできるように構成できます。ディレクトリ・アクセスの構成をOracle Netコンフィギュレーション・アシスタントから選択すると、使用するディレクトリ・サーバー・タイプを指定するように要求されます。Active Directoryをディレクトリ・サーバー・タイプとして選択すると、Oracle Netコンフィギュレーション・アシスタントのディレクトリ・サーバーの自動検出機能により、次のことが自動的に行われます。
Active DirectoryサーバーにすでにOracleコンテキストがある場合、次のデフォルト以外のラジオ・ボタンを選択します。
Oracle Netコンフィギュレーション・アシスタントに、「Oracleコンテキストは存在しません。」と表示されます。これを無視して、Oracleコンテキストの作成を選択します。既存のOracleコンテキストの再作成を試行せずに、ディレクトリ・アクセスの構成が完了します。
関連資料
|
この項では、Active Directoryを介したOracle Databaseサーバーへの接続方法について説明します。
次の項目について説明します。
Oracleネット・ディレクトリ・ネーミングを使用する場合、クライアント・コンピュータでは、Oracleコンテキストに含まれるデータベース・エントリまたはネット・サービス名エントリを指定して、データベースに接続します。たとえば、Active DirectoryのOracleコンテキスト内のデータベース・エントリがorcl
で、クライアントとデータベースが同じドメインに属する場合、次のように接続文字列を入力し、SQL*Plusを介してデータベースに接続します。
SQL> CONNECT username/password@orcl
クライアントとデータベースが異なるドメインに属する場合は、次のように入力し、SQL*Plusを介してデータベースに接続します。
SQL> CONNECT username/password@orcl.domain
domain
は、Oracle Databaseサーバーが存在するドメインです。
これらの接続文字列は、DNS形式の規則に従います。Active Directoryでは、X.500ネーミング規則を使用する接続もサポートしますが、使いやすさの点からDNS形式の規則をお薦めします。
DNS形式の規則を使用すると、クライアント・コンピュータとOracle Databaseサーバーが異なるドメインに属す場合でも、クライアント・ユーザーは最小限の接続情報を入力して、ディレクトリ・サーバーを介してOracle Databaseサーバーにアクセスできます。X.500の規則に従った名前は、特にクライアントとOracle Databaseサーバーが異なるドメイン(管理コンテキストとも呼ばれます)に属す場合、より長くなります。
Active DirectoryのOracleディレクトリ・オブジェクトは、次の2つのMicrosoftツールと統合されています。
これらのMicrosoftツール内から実際にOracle Databaseサーバーに接続して、接続性テストを実行できます。あるいは、単に実際に接続してテストすることもできます。接続テストを実行するには、次のようにします。
Windowsエクスプローラを起動するには、次のようにします。
「Active Directoryユーザーとコンピュータ」を起動するには、次のようにします。
「スタート」→「プログラム」→「管理ツール」→「Active Directoryユーザーとコンピュータ」を選択します。
いくつかのオプションとともにメニューが表示されます。この項では、「テスト」オプションおよびSQL*Plusと接続のオプションについてのみ説明します。
この項では、Active Directory内のOracleディレクトリ・オブジェクトに固有のセキュリティ・グループを特定し、セキュリティ・グループのメンバーを追加および削除する方法について説明します。
次の項目について説明します。
セキュリティ・グループは、OracleコンテキストがActive Directoryに作成される際に自動的に作成されます。アクセスを構成する(およびそれによりOracleコンテキストを作成する)ユーザーは各グループに自動的に追加されます。関連するグループは次のとおりです。
OracleDBCreators
グループは、Oracle Databaseサーバーを登録するユーザー用のグループです。ドメイン管理者は、自動的にこのグループのメンバーになります。このグループに属すユーザーは、次のことが実行できます。
OracleNetAdmins
グループに属すユーザーは、次のことが実行できます。
「Active Directoryユーザーとコンピュータ」を使用してセキュリティ・グループに対してユーザーの追加および削除ができます。
ユーザーを追加または削除するには、次のようにします。
この操作で、通常非表示の情報が表示され、編集できます。
右側のウィンドウ・ペインにセキュリティ・グループが表示されます。
いくつかのオプションとともにメニューが表示されます。
選択したグループのプロパティ・ダイアログが表示されます(この例ではOracleDBCreators
)。
ユーザー、連絡先、コンピュータ、またはグループの選択のダイアログが表示されます。
ユーザー、連絡先、コンピュータ、またはグループの選択のダイアログに選択したユーザーまたはグループが表示されます。
|
Copyright © 1996, 2007 Oracle Corporation. All Rights Reserved. |
|