建立 Oracle E-Business Suite 連線 URI
Microsoft BizTalk Adapter for Oracle E-Business Suite 連線 URI 包含配接器用來建立 Oracle E-Business Suite 連線的屬性,基本上是基礎 Oracle 資料庫。 Oracle E-Business 配接器支援兩種方式來連線到基礎 Oracle 資料庫:使用 tnsnames.ora,而不使用 tnsnames.ora。 根據連線方法的類型,連線 URI 的格式也不同。 本主題提供 Oracle 連線 URI 的相關資訊,也提供其他主題的連結,說明如何在不同的程式設計案例中指定 URI。
Oracle E-Business Suite 是一種應用層,可介面基礎 Oracle 資料庫,並根據組織內的不同需求,分類為不同的應用程式,例如財務和 HR。 這些應用程式都會提供各種「表單」,讓使用者能夠將資料輸入基礎 Oracle 資料庫。 存取這些表單受限於將使用者與應用程式內容建立關聯,其中包含使用者所屬的組織識別碼、與使用者相關聯的「責任」,以及使用者想要叫用的 Oracle E-Business Suite 應用程式名稱。 即使配接器會直接連線到基礎資料庫,而且不會使用表單與 Oracle E-Business Suite 進行介面,但在 Oracle E-Business Suite 成品上執行作業時,設定應用程式內容是必要的。 因此,若要連線到 Oracle E-Business 套件,以及使用 Oracle E-Business 配接器的基礎 Oracle 資料庫,您必須:
指定連線 URI 以連線到 Oracle E-Business Suite 和基礎 Oracle 資料庫。 建立連線時,您可以選擇指定 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 用戶端的限制,如果您在交易中執行作業, DataSourceName 參數 (連線 URI 中的 net 服務名稱) 不能包含超過 39 個字元。 因此,如果您要在交易中執行作業,請確定針對 DataSourceName 參數指定的值小於或等於 39 個字元。
連線 URI 可以包含 Oracle net 服務名稱,用來識別您想要連線的 Oracle E-Business Suite 服務。 Oracle 用戶端會根據您設定要使用的 Oracle 命名方法階層,解析您在 Oracle E-Business Suite 服務的連線 URI 中提供的 Oracle net 服務名稱。 其中一個常見的命名方法稱為本機命名。 在本機命名中,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 配接器會公開 ClientCredentialType 系結屬性,這個屬性會指定用戶端指定建立連線的 Oracle 用戶端認證類型。 ClientCredentialType系結屬性的可能值為Database和EBusiness。 根據這個系結屬性的值,您必須指定相關的認證。 如需詳細資訊,請參閱 Oracle 認證和連線 URI。 注意: 您必須將 AcceptCredentialsInUri 系結屬性設定為 true ,才能在連線 URI 中指定使用者名稱和密碼。 注意: 當 Oracle E-Business 配接器連接到 Oracle E-Business Suite 時,不會保留您為使用者名稱輸入的值大小寫。 使用者名稱會使用 SQL*Plus 的標準規則傳遞至 Oracle E-Business Suite。 不過,如果您想要保留使用者名稱的大小寫,或想要輸入包含特殊字元的使用者名稱,則必須在雙引號內指定值。 |
[PASSWORD] | userauthparams | 要用於驗證的密碼。 Oracle E-Business 配接器會公開 ClientCredentialType 系結屬性,這個屬性會指定用戶端指定建立連線的 Oracle 用戶端認證類型。 如果 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 服務名稱。 如需 net 服務名稱和 tnsnames.ora 的相關資訊,請參閱 設定 E-Business Suite 配接器的 Oracle 用戶端。 |
不使用 tnsnames.ora 連線
重要
- 針對此方法,您不需要在 tnsnames.ora 中輸入 net service name 專案。 此外,您甚至不需要在已安裝配接器用戶端的電腦上擁有 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 配接器會公開 ClientCredentialType 系結屬性,這個屬性會指定用戶端指定建立連線的 Oracle 用戶端認證類型。 ClientCredentialType系結屬性的可能值為Database和EBusiness。 根據這個系結屬性的值,您必須指定相關的認證。 如需詳細資訊,請參閱 Oracle 認證和連線 URI。 注意: 您必須將 AcceptCredentialsInUri 系結屬性設定為 true ,才能在連線 URI 中指定使用者名稱和密碼。 注意: 當 Oracle E-Business 配接器連接到 Oracle E-Business Suite 時,不會保留您為使用者名稱輸入的值大小寫。 使用者名稱會使用 SQL*Plus 的標準規則傳遞至 Oracle E-Business Suite。 不過,如果您想要保留使用者名稱的大小寫,或想要輸入包含特殊字元的使用者名稱,則必須在雙引號內指定值。 |
[PASSWORD] | userauthparams | 要用於驗證的密碼。 Oracle E-Business 配接器會公開 ClientCredentialType 系結屬性,這個屬性會指定用戶端指定建立連線的 Oracle 用戶端認證類型。 如果 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 Listener 埠。 預設值 1521。 |
[SERVICE_NAME] | hostinfoparams | Oracle 資料庫服務名稱。 這是必要項目。 |
[SERVICE_TYPE] | hostinfoparams | Oracle 服務的型別。 可能的值為 [專用 ] 或 [共用]。 專用服務會使用專用的伺服器進程,只提供一個使用者進程。 共用服務會使用可服務多個使用者進程的共用伺服器進程。 預設值是 [專用]。 |
Oracle 認證和連線 URI
根據預設,Oracle E-Business 配接器會在連線 URI 中指定 Oracle 認證時擲回例外狀況。 這是因為這些認證在連線 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。
ClientCredentialType系結屬性的可能值為Database和EBusiness。
如果 ClientCredentialType 屬性設定為 Database,用戶端必須指定資料庫認證。
如果 ClientCredentialType 屬性設定為 EBusiness,用戶端必須指定 Oracle E-Business Suite 認證。 在此情況下,配接器用戶端也必須指定 OracleUserName 和 OraclePassword 系結 屬性的資料庫認證。
重要
如果配接器用戶端將 ClientCredentialType 系結屬性設定為 Database,但叫用 Oracle E-Business Suite 成品,則會使用為 OracleUserName 和 OraclePassword 系結屬性指定的值來設定應用程式內容,以指定要連線到 Oracle E-Business Suite 的資料庫認證。 在 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 是 NET 服務名稱,與 tnsnames.ora 中目標 Oracle 資料庫的服務名稱和連線資訊相關聯。
以下是 Oracle E-Business 配接器的連線 URI 範例,而不使用 tnsnames.ora。
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 的連線