この章では、Oracle B2Bが、どのような方法で企業と取引パートナ間における安全で信頼性の高いビジネス・ドキュメントの交換を実現しているかについて説明します。また、Oracle B2BがBusiness-to-Businessのドキュメント標準、セキュリティ、トランスポート、メッセージング・サービス、および取引パートナ管理をどのようにサポートしているかについても説明します。
Oracle B2BをOracle SOA Suiteコンポジット・アプリケーション内でバインディング・コンポーネントとして使用すると、エンドツーエンドのビジネス・プロセスを実装できます。Oracle B2Bは、Health Level 7もサポートしているため、複数の医療システムによる相互通信を可能にします。
この章の内容は次のとおりです。
ビジネス間のE-Commerceトランザクションは、手紙や宅急便の運送業者(出荷)のトランザクションと考えることができます。これら2種類のトランザクションの差出人は、アイテムのパッケージングと送信に必要な詳細、および受取人の要件を考慮する必要があります。表1-1に、この2種類のトランザクションを比較した例を示します。
表1-1従来のトランザクションとE-Commerceトランザクションの比較
出荷特性 | 従来の出荷トランザクション | E-Commerceトランザクション |
---|---|---|
出荷アイテム(トランザクション・アイテム) |
携帯電話 |
電子ドキュメント ドキュメント・プロトコル: カスタム、EDI EDIFACT、EDI X12、HL7、OAG、位置指定フラット・ファイル、RosettaNet、UCCnetなど |
アイテムのパッケージ方法 |
ボックス、気泡シート |
パッケージング・プロトコル: SMIME、SOAP、XMLDSig、XMLEncrypt |
アイテムの送受信方法 |
トラック、船、飛行機 |
トランスポート・プロトコル: HTTP、File、FTP、SFTP (SSH FTP)、TCP/IP、SMTP、MLLPなど |
運送業者 |
DHL、FedEx、UPS、USPS |
メッセージ交換プロトコル: RNIF、AS1、AS2、ebMSなど |
運送業者サービスの要件 |
|
|
このガイドでは、Oracle B2Bを使用してドキュメント、パッケージングおよび配達を定義する方法について説明します。取引パートナの構成、アグリーメントの作成とデプロイおよびデプロイメントの監視の方法についても説明します。
Oracle B2Bは、医療、小売業、IT、テレコム、エレクトロニクス、製造、食品など、複数の業界範囲に定義されている業界標準のE-Commerceプロトコルを多数サポートしています。表1-2に、Oracle B2Bでサポートされているプロトコルを示します。
表1-2 Oracle B2Bでサポートされているプロトコル
プロトコル・タイプ | プロトコル |
---|---|
ドキュメント・プロトコル |
|
パッケージング・プロトコル |
|
トランスポート・プロトコル |
|
メッセージ交換プロトコル |
|
注意:
カスタムおよび位置指定フラット・ファイルのドキュメント・プロトコルを使用すると、W3CXMLスキーマ(OAGIS、xCBL、UBL、ebXMLなど)を含む他の多数のドキュメント・タイプを使用できます。ガイドライン・ドキュメントを作成するには、Oracle Document Editorを使用します。
Oracle B2Bインスタンス・データは、データベースのSOAINFRAスキーマ内に格納されて管理されます。設計時および構成のOracle B2Bメタデータは、Oracle Fusion Middlewareで使用可能なメタデータ・サービス(MDS)を使用して格納および管理されます。
MDSの詳細は、『Oracle Fusion Middlewareの管理』のMDSリポジトリの管理に関する項を参照してください。
Oracle B2Bで作成されたドキュメントはメタデータ・リポジトリに格納されるため、データベースのトランザクション・ログがいっぱいになる可能性があります。この問題が頻繁に発生する場合は、データベース構成パラメータの値を上げて、より大きいログ・ファイルを許可します。大規模なログ・ファイルには、より大きい領域が必要ですが、アプリケーションによる操作の再試行の必要性は減少します。
この値を増やすには、次のコマンドを発行します:
db2 update database config for soainfra using LOGFILESIZ 8192
Oracle B2Bでは、包括的なセキュリティ・プラットフォーム・フレームワークであるOracle Platform Security Servicesのセキュリティ機能が利用されます。
Oracle Platform Security Serviceは、次の機能をサポートしています。
認証
アイデンティティ・アサーションとアイデンティティ管理
認可
アプリケーション固有のポリシーの指定と管理
資格証明ストア・フレームワークを使用した資格証明とキー・ストアの管理
監査中
ロール管理およびロールと資格証明のマッピング
ユーザーとロールのAPI
シングル・サインオンのソリューション
セキュリティの構成と管理
暗号化
Oracle SOA Suiteのインストール時に作成されたデフォルトの管理者ユーザーには、すべてのOracle B2B機能にアクセスできる管理者ロールが割り当てられます。デフォルトの管理者ユーザーは、追加のユーザーを作成して、次のロールを割り当てることができます。
ホスト管理者: このロールには、すべてのOracle B2B機能に対するアクセス権があります。すべてのデータに対する管理者ロールを保持できるのは、ホスト取引パートナ・ユーザーのみです。
ホスト監視: このロールは、すべての取引パートナのレポートにアクセスしたり、ランタイム・データを表示したりできます。
リモート管理者: このロールには、「パートナ」ページへの制限されたアクセス権があります。このロールのユーザーが表示および編集できるのは、独自の設計データ(チャネルやドキュメントなど)のみです。つまり、表示できるのは、自分がパートナであるアグリーメントのみであり、アクセスできるのは、自分のランタイム・レポート・データのみです。
リモート監視: このロールは、ホスト取引パートナとの独自の交信に関連したレポートにアクセスしたり、ランタイム・データを表示したりできます。
ロールの割当て方法は、「取引パートナ・ユーザーの追加」を参照してください。
Oracle B2Bユーザー・インタフェースを使用して設計、デプロイ、および管理するパートナ・データは、Metadata Service (MDS)リポジトリの集中管理されたストレージによって保護されます。
その他のセキュリティ機能は、次のとおりです。
トランスポート・プロトコルベースのセキュリティ(HTTP、FTP、WS-HTTPのWebサービス・セキュリティ(OWSM)およびSMTP交換用)
デジタル・エンベロープおよびデジタル証明書
デジタル署名(ホストおよびリモート取引パートナ用)
資格証明ストア・フレームワーク(すべてのパスワードとセキュリティ資格証明の格納用)との統合
SHTTP (Secure Sockets Layer (SSL)を使用)
暗号化キー・ストア・パスワード(ホスト取引パートナ用)
注意:
Oracle B2Bランタイムでは、CLIENT-CERT認証方法がサポートされません。したがって、B2Bが、OAM-SSOで保護されたURLにポストすることはできません。
セキュリティの詳細は、次を参照してください。
『Oracle Fusion Middleware Oracle Platform Security Servicesによるアプリケーションの保護』
Oracle B2Bは、インスタンス・リポジトリに格納する前のペイロードの不明瞭化をサポートしています。Oracle Fusion Middlewareのセキュリティ・インフラストラクチャは、ペイロードを不明瞭化して格納および取得し、承認されたユーザーのみにワイヤ・メッセージ、ビジネス・メッセージおよびアプリケーション・メッセージのペイロードを表示するために使用します。暗号化アルゴリズムは指定できません。キーは資格証明ストアに格納されます。
実行時に、ペイロードは、不明瞭化されてからインスタンス・リポジトリに格納されます。処理中にこのペイロードをインスタンス・ストアから取得すると、そのペイロードは、B2Bエンジンによる処理のために、自動的に明瞭化されます。
同様に、アウトバウンド方向でペイロードの不明瞭化が必要な場合、ペイロードは、不明瞭化されてからインスタンス・リポジトリに格納されます。交換レベルの暗号化が指定されている場合、ペイロードは、指定された暗号化スキームを使用して暗号化されてからワイヤに配置されます。
ペイロードの不明瞭化は、Oracle Enterprise Manager Fusion Middleware Controlで構成できます。詳細は、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』および「Fusion Middleware ControlでのB2B構成プロパティの設定」を参照してください。
ペイロードの不明瞭化を有効にする場合は、次の点を考慮します。
大きなペイロード(「構成」タブの「大きなペイロード・サイズ」パラメータで定義)は不明瞭化されません。これは、大きなペイロードは、インスタンス・リポジトリではなく、ディレクトリ(ファイル・システム)に格納されるためです。ファイル・システムに大きなペイロードを格納すると、セキュリティ・リスクが発生します。
不明瞭化されたペイロードへのアクセスは、そのドキュメント・タイプへのアクセス権を持つユーザーがOracle B2Bインタフェースを介してのみ可能です。これらのユーザーに対しては、ペイロードは明瞭化された状態で表示されます。その他のユーザーはそのドキュメント・タイプに一切アクセスできません。ドキュメント・タイプへのアクセスが可能になるようにユーザーをプロビジョニングできます。ドキュメント・タイプのプロビジョニングの詳細は、「ドキュメント・タイプへのアクセス制限」を参照してください。
不明瞭化は、マルチバイト・キャラクタを使用するペイロードおよびOracle以外のデータベースに対して使用できます。
不明瞭化されたペイロードが含まれているインスタンス・ストアを移行する場合は、資格証明ストア・フレームワーク(CSF)もエクスポートする必要があります。これは、CSFには、これらのペイロードを明瞭化するキー(不明瞭化と明瞭化では同じキーを使用)が含まれているためです。インスタンス・ストアが新規のストアの場合、移行は不要です。これは、初めてペイロードが不明瞭化されるときに、キーが作成されるためです(存在しない場合)。
デフォルトまたはJMSの統合タイプを使用している場合、Oracle B2Bで不明瞭化されて持続されているペイロードは、コンポジット・アプリケーション内の他のSOAコンポーネントに明瞭化された状態で渡されます。この明瞭化されたペイロードを他のSOAコンポーネントで表示するユーザーは、そのペイロードが不明瞭化されて持続されるようにセキュリティを確保し、そのペイロードを表示するユーザーに承認を課すようにする責任があります。
Oracle B2Bでは、ドキュメント・タイプに基づいたアクセス制限によってペイロード・セキュリティをサポートしています。ドキュメント・タイプ・アクセスには、次のユーザー権限を使用できます。
すべてのドキュメント・タイプに対する管理者権限
この権限によって、ユーザーはすべてのドキュメント・タイプを追加、アクセス、編集および削除できます。このユーザーには、インポート、エクスポート、パージなどの管理機能へのアクセス権もあります。
特定のドキュメント・タイプに対する管理者権限
この権限によって、ユーザーは、自分に権限がある特定のドキュメント・タイプをアクセス、編集および削除できます。このユーザーは、制限されているドキュメント・タイプをアクセス、編集、削除することはできません。また、新規のドキュメント・タイプを追加することも、インポート、エクスポート、パージなどの管理機能にアクセスすることもできません。
すべてのドキュメント・タイプに対する監視権限
この権限によって、ユーザーはすべてのドキュメント・タイプにアクセスして表示できます(ただし、編集や削除はできません)。
特定のドキュメント・タイプに対する監視権限
この権限によって、ユーザーは特定のドキュメント・タイプにアクセスして表示できます(ただし、編集や削除はできません)。このユーザーは、制限されているドキュメント・タイプにアクセスして表示することはできません。
デフォルトの管理者ユーザーは、次のように、他のロールに対してドキュメント・タイプ・アクセスを制限できます。
ホスト管理者には、すべてのドキュメント・タイプへのアクセス権を付与できます。その場合、このユーザーはドキュメント・タイプ・アクセスを他のホスト管理者またはリモート管理者に制限できます。
ホスト管理者には、特定のドキュメント・タイプのみへのアクセス権を付与できます。その場合、このユーザーはドキュメント・タイプ・アクセスを他のホスト管理者またはリモート管理者に制限することはできません。
リモート管理者には、リモート取引パートナに関連する特定のドキュメント・タイプのみ、またはすべてのドキュメント・タイプのアクセス権を付与できます。とぢらの場合も、リモート取引パートナ管理者は、システムにドキュメント・タイプを作成したり、特定のリモート取引パートナのユーザーをプロビジョニングすることはできません。ユーザーをプロビジョニングできるのは、ホスト取引パートナ管理者ユーザーのみです。
ホスト監視には、すべてのドキュメント・タイプまたは特定のドキュメント・タイプに対する表示専用アクセス権を付与できます。ただし、他のユーザーに対してドキュメント・タイプ・アクセスを制限することはできません。
リモート監視には、リモート取引パートナに関連するすべてのドキュメント・タイプ、またはリモート取引パートナに関連する特定のドキュメント・タイプに対する表示専用アクセス権を付与できます。ただし、他のユーザーに対してドキュメント・タイプ・アクセスを制限することはできません。
注意:
すべての「管理」タブ機能へのアクセス権がある管理者ユーザーは、任意またはすべてのドキュメント・タイプが割り当てられると、管理者権限が失われ、「管理」タブを使用できなくなります。
Oracle B2Bインタフェースでドキュメント・タイプ・アクセスを指定する方法の詳細は、「ユーザーがアクセス権限を持つドキュメント・タイプの追加」を参照してください。
特定のドキュメント・タイプへのアクセスを制限する場合は、次の点を考慮します。
制限されたドキュメント・タイプには、新規のドキュメント定義を追加できません。
ドキュメント・タイプはインポート、エクスポートまたはパージできません。
「パートナ」→「ドキュメント」タブでは、ドキュメント・タイプは変更できません。
次の各タブには、制限されているドキュメント・タイプがリストされますが、詳細の表示またはアクセスはできません。
「管理」→「ドキュメント」タブ
「レポート」タブ
「メトリック」タブ
制限されているドキュメント・タイプのドキュメント定義が含まれているアグリーメントは、変更またはエクスポートできません。
B2Bバインディング・コンポーネントを含むSOAコンポジットでは、ドキュメント・タイプに関する制限が有効ではありません。Oracle JDeveloperのB2B構成ウィザードでは、任意のユーザーがすべてのドキュメント・タイプを使用できます。
Oracle B2Bは、ビジネス・プロセスを取引パートナに展開するためのBusiness-to-Businessゲートウェイとして使用されます。Oracle B2BをSOAコンポジット・アプリケーションで使用すると、エンドツーエンドのビジネス・プロセス統合をモデル化できます。
Oracle SOA Suiteには、コンポジット・アプリケーションを設計、デプロイおよび管理するためのサービス・インフラストラクチャ・コンポーネントの完全なセットが用意されています。コンポジット・アプリケーションに含まれる複数のテクノロジ・コンポーネントでは、単一のデプロイおよび管理モデルとツール、エンドツーエンドのセキュリティおよびユニファイド・メタデータ管理などの共通機能が共有されます。詳細は、『Oracle Fusion Middleware Oracle SOA SuiteでのSOAアプリケーションの開発』を参照してください。
SOA実装で、Oracle B2Bは、バインディング・コンポーネントとして機能し、メッセージの送受信を可能にするネットワーク・プロトコルおよびサービスを使用します。
SOAコンポジット・アプリケーションは、Oracle B2Bからのメッセージをサービス(インバウンド)として受信します。
SOAコンポジット・アプリケーションは、Oracle B2Bへのメッセージを参照(アウトバウンド)として渡し、次に、Oracle B2Bがそのメッセージをパートナに送信します。
Oracle B2Bでは、メッセージの他に、SOA実装で添付ファイルおよび大きなペイロードを送信することもできます。大きなペイロードの処理の詳細は、「大きなペイロードの処理」を参照してください。
注意:
Oracle SOA Suite内でのOracle B2B、メディエータおよびBPELコンポーネントの統合では、Oracle E-Business Suiteと通信するOracle B2B 11gにXMLゲートウェイの内部デリバリ・チャネルは不要です。通信は、Oracle SOA Suiteで使用可能なOracle Applicationアダプタを使用して実行できます。
この例では、SOAコンポジット・アプリケーションのコンポーネントを使用したOracle E-Business Suite起点の発注書の送信方法を説明します。
図1-1は、この例の図解です。
アウトバウンド発注書(P.O.)はXMLドキュメントで、次のようなエンドツーエンドのビジネス・プロセスが関与しています。
Oracle E-Business SuiteなどのアプリケーションがP. O.プロセスを開始します。P. O.ドキュメントには、アプリケーション生成のXMLが使用されます。
Oracle Mediatorは、Oracle E-Business SuiteからP. O.を受信します。このP. O.は、XSLTマッパーを使用して正規XMLに変換され、コンポジット・アプリケーションの検証時に取得したスキーマを使用して検証されます。Oracle Mediatorは、メッセージをOracle BPEL Process Managerにルーティングします。
Oracle BPEL Process Managerは、Oracle MediatorからP. O.を受信します。ヒューマン・ワークフロー、ビジネス・ルール、エラー処理などのビジネス・プロセスは、Oracle BPEL Process ManagerがP. O.をOracle Mediatorに戻す前に適用できます。
Oracle Mediatorは、Oracle BPEL Process ManagerからP. O.を受信します。このP. O.は、XSLTマッパーを使用して正規XMLからターゲットXMLに変換され、Oracle B2Bにルーティングされます。
Oracle B2Bは、MediatorからP. O.を受信してEDIネイティブ・フォーマットなどに変換し、取引パートナとの相互作用を管理します。
Oracle Business Activity Monitoring (BAM)は、エンドツーエンド・プロセスを監視します。
SOAコンポジット・アプリケーションにB2Bバインディング・コンポーネントを含める方法の詳細は、「Oracle JDeveloper環境でのOracle B2Bの使用」を参照してください。
Oracle B2Bサンプルを使用して、ガイドライン・ファイルの作成、Oracle B2Bトランザクションの設計、取引パートナ・アグリーメントのデプロイと監視、SOAコンポジット・アプリケーションの作成とデプロイの各手順を実行できます。コンポジット・アプリケーションにはOracle B2Bバインディング・コンポーネントが含まれ、Oracle B2Bで作成したドキュメント定義が使用されます。
サンプルは、次のドキュメント・タイプに対して使用できます。
1Sync
カスタムXML
EDI EDIFACT
EDI X12
HL7
RosettaNet
このエンドツーエンドのサンプルは、Acme社とGlobalChips社の2つの取引パートナがトランザクションに関与しているシナリオに基づいています。Acme社は起案者(発注書シナリオでは購入者)で、GlobalChips社は応答者(発注書シナリオでは販売者)です。HL7サンプルでは、Acme社(起案者)が患者の入院メッセージであるADT_A01を送信し、GlobalChips社から確認のACK_A01を受信します。
サンプルには、サンプルの実行に必要なすべてのドキュメント、アグリーメントおよびSOAコンポジットを作成するための指示とサンプル・ドキュメント定義ファイルが含まれています。サンプルごとに、完全なSOAコンポジット・アプリケーションも提供されます。
サンプルをダウンロードするには、Oracle SOA Suiteサンプル・サイト(http://java.net/projects/oraclesoasuite11g/pages/B2B
)にアクセスします。
Oracle B2B解説には、Oracle B2BのebXML、EDI (EDIFACTやX12)およびHL7の実装に関する詳細が記載されています。この解説には、構成ステップ、パフォーマンスのベスト・プラクティス、典型的なエラーの説明およびFAQが含まれています。解説をダウンロードするには、http://www.oracle.com/technetwork/middleware/b2b-integrations
を参照してください。
サンプルと解説の使用に必要なコンポーネントについては、「Oracle B2Bの開始に必要な事項」を参照してください。
いくつかのコンポーネントでは、Oracle B2Bの監視、構成およびパフォーマンス・チューニングの各機能が提供されます。
Oracle Enterprise Manager Fusion Middleware Control: Enterprise Managerメトリックを有効にしてOracle B2Bインフラストラクチャを監視するには、Oracle B2Bサーバーのプロパティを設定します。
詳細は、次を参照してください:
『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』のOracle B2Bの構成に関する項、およびOracle B2Bのモニタリングに関する項。
Oracle B2Bインタフェース内では、監視と構成に次の設定を使用します。
「管理」→「構成」タブ
B2Bシステム・パラメータの構成 を参照してください
「管理」→「レポート」タブ
「レポートの作成」を参照してください
「管理」→「メトリック」リンク
B2Bメトリックの使用 を参照してください
Oracle B2Bには、スクリーン・リーダーでアプリケーションのすべてのコンポーネントにアクセスし、これらを読み取れるようにするスクリーン・リーダー・オプションがあります。
スクリーン・リーダーを有効化する手順は、次のとおりです。
注意:
ユーザー・インタフェースでカレンダが表示される部分は、スクリーン・リーダー・モードでは使用できません。