Oracle E-Business Suite 接続 URI を作成する
Microsoft BizTalk Adapter for Oracle E-Business Suite 接続 URI には、Oracle E-Business Suite への接続を確立するためにアダプターが使用するプロパティと、基本的には基になる Oracle データベースが含まれます。 Oracle E-Business アダプターでは、基になる Oracle データベースに接続する 2 つの方法 (tnsnames.ora を使用する方法と tnsnames.ora を使用しない方法) がサポートされています。 接続方法の種類に基づいて、接続 URI の形式も異なります。 このトピックでは、Oracle 接続 URI に関する情報を提供し、さまざまなプログラミング シナリオで URI を指定する方法を説明する他のトピックへのリンクも提供します。
Oracle E-Business Suite は、基になる Oracle データベースとインターフェイスするアプリケーション レイヤーであり、organization内のさまざまなニーズに基づいて、財務や人事などのさまざまなアプリケーションに分類されます。 これらの各アプリケーションは、ユーザーが基になる Oracle データベースにデータを入力できるようにするさまざまな "フォーム" を提供します。 これらのフォームへのアクセスは、ユーザーが属するorganization ID、ユーザーに関連付けられた "責任"、およびユーザーが呼び出す Oracle E-Business Suite アプリケーションの名前を構成するアプリケーション コンテキストにユーザーを関連付けることによって制限されます。 アダプターは基になるデータベースに直接接続し、Oracle E-Business Suite とのインターフェイスにフォームを使用しない場合でも、Oracle E-Business Suite 成果物に対する操作を実行する場合は、アプリケーション コンテキストの設定が必須です。 そのため、Oracle E-Business アダプターを使用して Oracle E-Business スイートと基になる Oracle データベースに接続するには、次の手順を実行する必要があります。
Oracle E-Business Suite と基になる Oracle データベースに接続する接続 URI を指定します。 接続の確立中に、Oracle E-Business Suite または基になる Oracle データベースの資格情報を指定することを選択できます。
ユーザーのアプリケーション コンテキストを設定します。 Oracle E-Business アダプターは、資格情報と責任を受け入れる特定のバインディング プロパティを公開します。 これらのバインド プロパティの詳細については、「 BizTalk Adapter for Oracle E-Business Suite のバインド プロパティ」を参照してください。 アプリケーション コンテキストの設定の詳細については、「アプリケーション コンテキストの 設定」を参照してください。
このセクションでは、tnsnames.ora を使用し、tnsnames.ora を使用せずに基になるデータベースに接続する接続 URI を指定する方法について説明します。 また、接続 URI を使用して Oracle E-Business Suite に接続する方法についても説明します。
tnsnames.ora を使用して接続する
重要
- この方法では、アダプター クライアントがインストールされているコンピューター上の tnsnames.ora ファイルに net サービス名エントリを追加する必要があります。 Net サービス名エントリの詳細については、「 E-Business Suite アダプター用に Oracle クライアントを構成する」を参照してください。
- Oracle クライアントの制限により、トランザクションで操作を実行する場合、接続 URI の DataSourceName パラメーター (net サービス名) に 39 文字を超える文字を含めることはできません。 したがって、トランザクションで操作を実行する場合は、 DataSourceName パラメーターに指定された値が 39 文字以下であることを確認してください。
接続 URI には、接続する Oracle E-Business Suite サービスを識別するために使用される Oracle Net サービス名を含めることができます。 Oracle クライアントは、使用するように構成した Oracle の名前付け方法の階層に従って、接続 URI で指定した Oracle Net サービス名を Oracle E-Business Suite サービスの接続情報に解決します。 一般的な名前付け方法の 1 つは、ローカルの名前付けと呼ばれます。 ローカルの名前付けでは、Oracle クライアントは tnsnames.ora というファイルを使用して Oracle net サービス名を解決します。
WCF の一般的なエンドポイント アドレス URI は、次のように表されます。 scheme://userauthparams@hostinfoparams
scheme はスキーム名です。
userauthparams は、エンドポイントによるユーザー認証に必要なパラメーターの名前と値のコレクションです。
hostinfoparams は、ホストへの接続を確立するために必要な情報です。たとえば、net サービス名などです。
Oracle E-Business アダプター接続 URI は、この基本的な形式に準拠しており、次のように実装されます。
oracleebs://User=[USER_NAME];Password=[PASSWORD]@[NET_SERVICE_NAME]
次の表では、接続 URI に含まれるプロパティについて説明します。
接続 URI プロパティ | カテゴリ | 説明 |
---|---|---|
[USER_NAME] | userauthparams | 認証に使用するユーザー名。 Oracle E-Business アダプターは、クライアントが接続を確立するために指定する Oracle クライアント資格情報の種類を指定する ClientCredentialType バインディング プロパティを公開します。 ClientCredentialType バインディング プロパティに使用できる値は、Database と EBusiness です。 このバインディング プロパティの値に応じて、関連する資格情報を指定する必要があります。 詳細については、「 Oracle 資格情報と接続 URI」を参照してください。 メモ: 接続 URI でユーザー名とパスワードを指定するには、 AcceptCredentialsInUri バインド プロパティを true に設定する必要があります。 メモ: Oracle E-Business アダプターは、Oracle E-Business Suite に接続するときにユーザー名に入力した値の大文字と小文字は保持されません。 ユーザー名は、SQL*Plus の標準規則を使用して Oracle E-Business Suite に渡されます。 ただし、ユーザー名の大文字と小文字を保持する場合、または特殊文字を含むユーザー名を入力する場合は、値を二重引用符で囲んで指定する必要があります。 |
[PASSWORD] | userauthparams | 認証に使用するパスワード。 Oracle E-Business アダプターは、クライアントが接続を確立するために指定する Oracle クライアント資格情報の種類を指定する ClientCredentialType バインディング プロパティを公開します。 ClientCredentialType プロパティが Database に設定されている場合、クライアントは Oracle データベース ユーザーのパスワードを指定する必要があります。 ClientCredentialType プロパティが EBusiness に設定されている場合、クライアントは Oracle E-Business Suite ユーザーのパスワードを指定する必要があります。 メモ: Oracle E-Business アダプターは、Oracle E-Business Suite に接続するときにパスワードに入力した値の大文字と小文字は保持されません。 ユーザー名は、SQL*Plus の標準規則を使用して Oracle E-Business Suite に渡されます。 ただし、パスワードの大文字と小文字を保持する場合、または特殊文字を含むパスワードを入力する場合は、値を二重引用符で囲んで指定する必要があります。 |
[NET_SERVICE_NAME] | hostinfoparams | Oracle E-Business アダプターがインストールされているコンピューター上の tnsnames.ora ファイルに指定されているネット サービス名。 net サービス名と tnsnames.ora の詳細については、「 E-Business Suite アダプター用に Oracle クライアントを構成する」を参照してください。 |
tnsnames.ora を使用せずに接続する
重要
- この方法では、tnsnames.ora に net サービス名エントリを含める必要はありません。 また、アダプター クライアントがインストールされているコンピューターに tnsnames.ora ファイルをインストールする必要もありません。
- トランザクションで操作を実行している場合、この接続モードはサポートされません。 これは、Oracle クライアントの制限によるものです。
WCF の一般的なエンドポイント アドレス URI は、次のように表されます。 scheme://userauthparams@hostinfoparams
scheme はスキーム名です。
userauthparams は、エンドポイントによるユーザー認証に必要なパラメーターの名前と値のコレクションです。
hostinfoparams は、ホストへの接続を確立するために必要な情報です。たとえば、サーバー名、ポート番号などです。
Oracle E-Business アダプター接続 URI は、この基本的な形式に準拠しており、次のように実装されます。
oracleebs://User=[USER_NAME];Password=[PASSWORD]@[SERVER_NAME]:[PORT_NUMBER]/[SERVICE_NAME]/[SERVICE_TYPE]
次の表では、接続 URI に含まれるプロパティについて説明します。
接続 URI プロパティ | カテゴリ | 説明 |
---|---|---|
[USER_NAME] | userauthparams | 認証に使用するユーザー名。 Oracle E-Business アダプターは、クライアントが接続を確立するために指定する Oracle クライアント資格情報の種類を指定する ClientCredentialType バインディング プロパティを公開します。 ClientCredentialType バインディング プロパティに使用できる値は、Database と EBusiness です。 このバインディング プロパティの値に応じて、関連する資格情報を指定する必要があります。 詳細については、「 Oracle 資格情報と接続 URI」を参照してください。 メモ: 接続 URI でユーザー名とパスワードを指定するには、 AcceptCredentialsInUri バインド プロパティを true に設定する必要があります。 メモ: Oracle E-Business アダプターは、Oracle E-Business Suite に接続するときにユーザー名に入力した値の大文字と小文字は保持されません。 ユーザー名は、SQL*Plus の標準規則を使用して Oracle E-Business Suite に渡されます。 ただし、ユーザー名の大文字と小文字を保持する場合、または特殊文字を含むユーザー名を入力する場合は、値を二重引用符で囲んで指定する必要があります。 |
[PASSWORD] | userauthparams | 認証に使用するパスワード。 Oracle E-Business アダプターは、クライアントが接続を確立するために指定する Oracle クライアント資格情報の種類を指定する ClientCredentialType バインディング プロパティを公開します。 ClientCredentialType プロパティが Database に設定されている場合、クライアントは Oracle データベース ユーザーのパスワードを指定する必要があります。 ClientCredentialType プロパティが EBusiness に設定されている場合、クライアントは Oracle E-Business Suite ユーザーのパスワードを指定する必要があります。 メモ: Oracle E-Business アダプターは、Oracle E-Business Suite に接続するときにパスワードに入力した値の大文字と小文字は保持されません。 ユーザー名は、SQL*Plus の標準規則を使用して Oracle E-Business Suite に渡されます。 ただし、パスワードの大文字と小文字を保持する場合、または特殊文字を含むパスワードを入力する場合は、値を二重引用符で囲んで指定する必要があります。 |
[SERVER_NAME] | hostinfoparams | Oracle E-Business Suite が実行されているサーバーの名前。 これは必須です。 |
[PORT_NUMBER] | hostinfoparams | Oracle Net リスナー ポート。 既定値は 1521 です。 |
[SERVICE_NAME] | hostinfoparams | Oracle データベース サービス名。 これは必須です。 |
[SERVICE_TYPE] | hostinfoparams | Oracle サービスの種類。 使用可能な 値は Dedicated または Shared です。 専用サービスでは、専用サーバー プロセスを使用して、1 つのユーザー プロセスのみを処理します。 共有サービスは、複数のユーザー プロセスに対応できる共有サーバー プロセスを使用します。 既定値は専用です。 |
Oracle 資格情報と接続 URI
既定では、Oracle の資格情報が接続 URI で指定されている場合、Oracle E-Business アダプターは例外をスローします。 これは、これらの資格情報が接続 URI のプレーン テキストとして表され、セキュリティ上のリスクがあるためです。 AcceptCredentialsInUri バインド プロパティを設定して、接続 URI に Oracle データベースの資格情報を含めることができるかどうかを制御できます。 AcceptCredentialsInUri プロパティが false (既定値) の場合、接続 URI に Oracle 資格情報が含まれている場合、Oracle E-Business アダプターは例外をスローします。プロパティが true の場合、例外はスローされません。
重要
文字列に資格情報をプレーン テキストとして渡すことによるセキュリティ 上のリスクがあるため、接続 URI で Oracle データベース接続の資格情報を指定しないようにする必要があります。 Oracle データベースの資格情報をより安全に提供する方法の詳細については、「 Oracle EBS アプリケーションをセキュリティで保護する」を参照してください。
Oracle E-Business Suite への接続を確立するために、データベース資格情報または Oracle E-Business Suite 資格情報のいずれかを指定することもできます。 アダプターは、 ClientCredentialType、 OracleUserName、 OraclePassword という 3 つのバインディング プロパティを公開して、この動作を有効にします。
ClientCredentialType バインド プロパティに指定できる値は、Database と EBusiness です。
ClientCredentialType プロパティが Database に設定されている場合、クライアントはデータベース資格情報を指定する必要があります。
ClientCredentialType プロパティが EBusiness に設定されている場合、クライアントは Oracle E-Business Suite の資格情報を指定する必要があります。 この場合、アダプター クライアントは OracleUserName および OraclePassword バインド プロパティのデータベース資格情報も指定する必要があります。
重要
アダプター クライアントが、 ClientCredentialType バインド プロパティを Database に設定して Oracle E-Business Suite に接続するためのデータベース資格情報を指定し、Oracle E-Business Suite 成果物を呼び出すシナリオでは、 OracleUserName および OraclePassword バインド プロパティに指定された値がアプリケーション コンテキストの設定に使用されます。 Oracle E-Business Suite で成果物を呼び出す場合は、アプリケーション コンテキストの設定が必須です。 アプリケーション コンテキストの設定の詳細については、「アプリケーション コンテキストの 設定」を参照してください。
接続 URI での予約文字の使用
Oracle E-Business アダプターでは、パラメーター値に特殊文字を含む接続 URI の指定はサポートされていません。 接続パラメーターの値に特殊文字が含まれている場合は、次のいずれかの操作を行ってください。
[アダプター サービス参照プラグインの追加] または [アダプター サービス アドインの使用] を使用して Visual Studio で URI を指定する場合は、[ URI のプロパティ ] タブで、つまりエスケープ文字を使用せずにそのまま指定する必要があります。 [ URI の構成 ] フィールドで URI を直接指定し、接続パラメーターに予約文字が含まれている場合は、適切なエスケープ文字を使用して接続パラメーターを指定する必要があります。
BizTalk Server管理コンソールで送受信ポートを作成するときに URI を指定し、接続パラメーターに予約文字が含まれている場合は、適切なエスケープ文字を使用して接続パラメーターを指定する必要があります。
接続 URI を使用して Oracle E-Business Suite に接続する
tnsnames.ora を使用した Oracle E-Business アダプターの接続 URI の例を次に示します。
oracleebs://ADAPTER
この例では、ADAPTER は、tnsnames.ora 内のターゲット Oracle データベースのサービス名と接続情報に関連付けられているネット サービス名です。
tnsnames.ora を使用しない Oracle E-Business アダプターの接続 URI の例を次に示します。
oracleebs://yourOracleServer:1521/yourOracleDatabaseServiceName/Dedicated
この例では、サーバー名は "yourOracleServer" で、サービス名は "yourOracleDatabaseServiceName" です。
次の場合に Oracle E-Business Suite への接続を確立する方法について説明します。
アダプター サービス BizTalk プロジェクト アドインまたはアダプター サービス参照の追加 Visual Studio プラグインを使用します。 「Visual Studio で Oracle E-Business Suite に接続する」を参照してください。
BizTalk Server ソリューションで送信ポートまたは受信ポート (場所) を構成する方法については、「Oracle E-Business アダプターへの物理ポート バインドを手動で構成する」を参照してください。
参照
E-Business Suite アダプター用に Oracle クライアントを構成する
Windows 認証を使用して Oracle E-Business Suite に接続する
Oracle E-Business Suite への接続を作成する