|
この節では、以下の機能を使って TPM リポジトリとやり取りできるトレーディング パートナ管理 (Trading Partner Management : TPM) データのスキーマについて説明します。
TPM スキーマでは、次を定義することでトレーディング パートナ間で情報を共有するように WebLogic Integration をコンフィグレーションできます。
トレーディング パートナには、さまざまな転送プロトコルを使用してドキュメントを交換する 1 つまたは複数のサービス バインディングを設定することができます。各転送では、クライアント、サーバ、署名、およびメッセージング ロールに対して各種の認証オプションを使用できます。TPM スキーマを使用すると、すべてのトレーディング パートナ向けに通信およびコンフィグレーション オプションの完全なセットを定義できます。
TPM スキーマのルート要素は、trading-partner-management
要素です。この要素は、ロギングとメッセージングのオプションを提供すると共に、すべてのコンフィグレーションで使用される 2 つの基本子要素を含んでいます。
service
要素は比較的単純で、次の要素を含んでいます。
trading-partner
要素はこれよりもかなり複雑です。次の図に、この要素の中でのエンティティ関係を示します。
TPM スキーマには、次のサービス プロトコルを使って通信するためのコンフィグレーション オプションを指定します。
トレーディング パートナが実行時にこれらのプロトコルを使って次の目的でメッセージを送信する際に、TPM スキーマによりトレーディング パートナの認証に関する設定が指定されます。
これらのセキュリティと認証のオプションは、次の要素を使ってコンフィグレーションします。
各プロトコル サービスの個々のバインディング要素は、メッセージおよび受信承認への署名を要求する属性に基づいて発信メッセージと承認にデジタル的に署名する方法で否認防止性をサポートします。メッセージ情報を安全にログに記録することもできます。
TPM スキーマはパスワード エリアスの使用をサポートしているため、WebLogic Integration のパスワード ストア内のパスワード エリアスを参照することができます。パスワード セキュリティの詳細については、『WebLogic Integration Administration Console の使用』の節「パスワード エリアスおよびパスワード ストア」を参照してください。
拡張プロパティ セットを使用して、ビジネス ニーズ固有のカスタム情報を取り込むことができます。extended-property-set によって、あらゆる XML 要素と属性を extended-property-set 要素の子ノードとして指定できます。TPM スキーマの拡張については、「extended-property-set 要素」を参照してください。
TPM オプションを開発環境にデプロイすることができます。その際に、トレーディング パートナ間の明示的なサービス プロファイルを指定する必要はありません。trading-partner-management
要素にテスト モード属性を指定することで、トレーディング パートナのデフォルト バインディングを使って TPM ビジネス設定をテストおよびデプロイできます。このモードでは、ビジネス メッセージを交換するパートナのペアごとに別々のサービス プロファイルを設定する必要がありません。
テスト モードの使用に関する詳細については、「trading-partner-management 要素」を参照してください。
TPM に対する WebLogic Integration Administration Console の使い方の詳細については、『WebLogic Integration Administration Console の使用』の節「トレーディング パートナ管理」を参照してください。
Workshop トレーディング パートナ統合のコントロールの詳細については、WebLogic Workshop ヘルプの「Integration アプリケーションを構築する」にある「TPM コントロール」、「RosettaNet コントロール」、および「ebXML コントロール」を参照してください。
Bulk Loader の使用に関する詳細については、「トレーディング パートナ Bulk Loader の使用」を参照してください。
XML の詳細については、W3C の Web サイトにある「XML-Signature Syntax and Processing」の「W3C Recommendation」を参照してください。
ebXML プロトコルの詳細については、Oasis の Web サイトにある「ebXML Collaboration-Protocol Profile and Agreement Specification - Version 2.0」を参照してください。
この要素は、トレーディング パートナの外部ビジネス アドレスを定義します。
<address>partnerMailAddress</address>
この要素は、親転送エンドポイントに接続するリモート クライアントの認証プロパティを指定します。
<authentication>
client-partner-name="tradingPartnerReference"
client-authentication= "BASIC
|NONE
|SSL_CERT_MUTUAL"
username="loginName"
password-alias="clientPassword"
client-certificate-name="certificateReference"
server-authentication= "NONE
|SSL_CERT"
server-certificate-name="certificateReference"/>
この要素は、WebLogic Integration 通信エンドポイントへのクライアント認証アクセスに使用するトレーディング パートナのデジタル証明書を定義します。
<client-certificate
name="certificateName"
password-alias="keystoreEntryPasswordAlias">
<ds:KeyInfo
.
.
.
</ds:KeyInfo>
</client-certificate>
この要素は、親トレーディング パートナの ebXML ビジネス プロトコル固有のバインディングを定義します。
ebXML プロトコルは、属性 is-signature-required
および is-receipt-signature-required
に基づいて発信メッセージと承認にデジタル的に署名する方法で、否認防止性をサポートします。
<ebxml-binding
business-protocol-name="protocolName"
business-protocol-version="versionNo"
delivery-semantics= " [BESTEFFORT
|ONCEANDONLYONCE
|ATLEASTONCE
|ATMOSTONCE]"
is-default="[true|false]"
is-receipt-signature-require="[true|false]"
is-signature-required="[true|false]"
name="bindingName"
persist-duration="intervalNo"
retries="retriesNo"
retry-interval="retryIntervalNo"
signature-certificate-name="signatureCertificate">
<signature-transforms
.
.
.
/>
<transport
.
.
.
/>
</ebxml-binding>
|
|||
この要素は、交換されるメッセージの暗号化と復号化に使用するトレーディング パートナのデジタル証明書を定義します。
<encryption-certificate
name="certificateName"
password-alias="keystoreEntryPasswordAlias">
<ds:KeyInfo
.
.
.
</ds:KeyInfo>
</encryption-certificate>
extended-property-set
要素では、ビジネス ニーズに合わせて TPM コンフィグレーションにカスタムの XML ノードを追加することができます。
子要素はリポジトリで XML ドキュメント内のサブツリーとして表され、ネストすることができます。
<trading-partner name="ACMECORP" type="REMOTE" business-id="ACME-id">
.
.
.
<extended-property-set
name="ACME Corp Extension"
description="Contact Info"
notes="the number format is important"/>
<business-contact>Joe Smith</business-contact>
<phone type="work">+1 123 456 7654</phone>
<phone type="cell">+1 321 654 4567</phone>
<city>Anytown</city>
<state>California</state>
</extended-property-set>
</trading-partner>
<extended-property-set
name="propertyName"
description="propertyDescription"
notes="propertyNotes">
<xmlElement
.
.
.
</xmlElement>
</extended-property-set>
この要素は RosettaNet PIP の障害通知者を表します。この管理者から適切なトレーディング パートナおよびバインディングに障害通知 (PIP0A1) メッセージが送信されます。
<failure-notifier
trading-partner-name="tradingPartnerReference"
binding-name="bindingNameReference""/>
この要素は RosettaNet PIP の障害レポート管理者を表します。この管理者から適切なトレーディング パートナおよびバインディングに障害通知 (PIP0A1) メッセージが送信されます。
<failure-report-administrator
trading-partner-name="tradingPartnerReference"
binding-name="bindingReference"/>
<reference>referenceName</reference>
この要素は、親トレーディング パートナに対して RosettaNet ビジネス プロトコル固有のバインディングを定義します。
RosettaNet プロトコルは、属性 is-signature-required
および is-receipt-signature-required
に基づいて送信メッセージと承認にデジタル的に署名する方法で、否認防止性をサポートします。
<rosettanet-binding
name="bindingName"
business-protocol-name="businessProtocolName"
business-protocol-version="businessProtocolVersion"
is-default="[true|false]"
encryption-certificate-name="encryptionCertificateName"
cipher-algorithm="[NONE|RC5|DES|TRIPLE_DES|RC2]"
encryption-level="[NONE|PAYLOAD|ENTIRE_PAYLOAD]"
is-signature-required="[true|false]"
is-receipt-signature-required="[true|false]"
signature-digest-algorithm="[SHA-1|MD5|None]"
signature-certificate-name="signatureCertificateName"
retries="noOfRetries"
retry-interval="retryIntervalNo"
process-timeout="processTimeoutNo">
<failure-report-administrator/>
<failure-notifier
.
.
.
/>
<transport
.
.
.
/>
</rosettanet-binding>
この要素は、サービスに対して RosettaNet プロトコル固有のコンフィグレーション属性を指定します。
<rosettanet-service-defaults
service-content-schema="schemaFilePath"
use-dtd-validation="[true|false]"
validate-service-content="[true|false]"
validate-service-header="[true|false]"/>
この要素は、発信接続の対象サーバのアイデンティティを認証するためにトレーディング パートナのデジタル証明書を定義します。
<server-certificate
name="serverCertificateName"
password-alias="password-alias_1">
<KeyInfo
.
.
.
</KeyInfo>
</server-certificate>
この要素は、トレーディング パートナが提供するビジネス プロセスを表します。
<service
name="serviceName"
description="serviceDescription"
notes="serviceNotes"
service-type="[WEBSERVICE|PROCESS|SERVICECONTROL]"
business-protocol="[WEBSERVICE|EBXML|ROSETTANET]">
<service-profile
.
.
.
/>
<rosettanet-service-defaults
.
.
.
/>
</service>
この要素は、2 つの B2B トレーディング パートナが実行に同意した会話、およびメッセージング特性、セキュリティ制約、転送メカニズム、ワークフロー プロセスなどのビジネス プロトコル実装詳細の仕様を定義します。各トレーディング パートナの適切なバインディングへのリンクによって、これらの特性を指定します。
<service-profile
local-trading-partner="localTradingPartner"
local-binding="localBinding"
external-trading-partner="externalTradingPartner"
external-binding="externalBinding"
status="[ENABLED|DISABLED]"
message-tracking="[NONE|DEFAULT|METADATA|ALL]"/>
この要素は、トレーディング パートナのデジタル証明書を特定し、関連するトレーディング パートナのメッセージにデジタル的に署名します。
<signature-certificate
name="signatureCertificateName"
password-alias="certificatePasswordAlias">
<KeyInfo
.
.
.
/>
この要素は、WebLogic Integration がメッセージに署名する前に、デジタル的に署名されるメッセージに対して一連の省略可能な XML データ トランスフォーメーションを定義します。WebLogic Integration は、メッセージでトランスフォーメーションを実行した後に、メッセージ ダイジェストを計算します。
<signature-transforms>
<xpath>xpath_expression-1</xpath>
<xpath>xpath_expression-2</xpath>
<xpath>xpath_expression-3</xpath>
</signature-transforms>
トレーディング パートナは、会話でビジネス メッセージを送受信する権限を持つビジネス エンティティです。
<trading-partner
name="tradingPartnerName"
description="tradingPartnerDescription"
notes="tradingPartnerNotes"
status="[enabled|ENABLED|disabled|DISABLED]"
type="[LOCAL|REMOTE]"
is-default="[true|false]"
business-id-type="businessIdType"
business-id="businessId"
email="emailAddress"
phone="phoneNumber"
fax="faxNumber"
username="username">
<address>partnerAddress</address>
<extended-property-set>
.
.
.
</extended-property-set>
<client-certificate>
.
.
.
</client-certificate>
<server-certificate>
.
.
.
</server-certificate>
<encryption-certificate>
.
.
.
</encryption-certificate>
<signature-certificate>
.
.
.
</signature-certificate>
<ebxml-binding>
.
.
.
</ebxml-binding>
<rosettanet-binding>
.
.
.
</rosettanet-binding>
<web-service-binding>
.
.
.
</web-service-binding>
</trading-partner>
この要素は TPM のドキュメント ルートです。TPM リポジトリ内の主要な要素すべての親要素として機能します。
<trading-partner-management
test-mode="[true|false]"
message-tracking-default="[NONE|METADATA|ALL]"
message-trace="[true|false]"
message-trace-directory="directoryLocation"
secure-audit-logging="[true|false]">
</trading-partner-management>
この要素は、バインディングの転送レベル プロパティと受信エンドポイントを指定します。
<transport
protocol="[http|HTTP|https|HTTPS|jms|JMS]"
protocol-version="[1.1|none]"
endpoint="URL"
timeout="timeoutNo">
<authentication
.
.
.
/>
</transport>
この要素とその子要素では、転送エンドポイントなどのメッセージング プロパティ、および Web サービスのホスティングまたは呼び出しを行うトレーディング パートナの認証パラメータを指定します。
<web-service-binding>
<transport
.
.
.
/>
</web-service-binding>
この要素は、デジタル的に署名されるメッセージに対する一連の省略可能な XML データ トランスフォーメーションの 1 つである可能性のある Xpath 式を定義します。メッセージ ダイジェストは、メッセージに対してトランスフォーメーションが実行されると計算されます。
<xpath>xpath-expression</xpath>