AS2 受信パイプライン (AS2EDIReceive および AS2Receive) は、パーティの契約プロパティに基づいて受信 MDN を AS2 メッセージ受信者として処理します。 BizTalk Server は MDN を送信 AS2 メッセージに自動的に関連付けます。
各パイプラインで実行される手順は次のとおりです。
メッセージの AS2 ヘッダーの AS2-From 値を、[契約のプロパティ] ダイアログ ボックスの [一方向 AS2 契約] タブの [識別子] ページの AS2-From リストの値と照合して、送信側を決定します。 一致するものが見つからない場合、パイプラインは処理を中止し、例外を発生させます。
次の AS2 プロパティをコンテキストに昇格します。
IsAS2FailedMessage
ディスポジションタイプ
GenerateAsynchronous200OKOnly
IsAS2MdnResponseMessage
IsAS2メッセージは署名されていますか
オリジナルメッセージID
受信コンテンツマイク
DispositionMode
メッセージID
InboundHttpHeaders プロパティをメッセージのすべての HTTP ヘッダーに設定し、メッセージのコンテキストに昇格します。
MDN のコピーを (ワイヤ形式で) 作成し、一方向 AS2 アグリーメント プロパティで有効になっている場合は、そのコピーを否認不可データベース (BizTalkDTADb データベースの EdiMessageContent テーブル) に格納します。
MDN が署名された場合の署名の検証など、MIME 処理を実行します。
MDN の MIC (メッセージ整合性チェック) と、元のメッセージを送信したときに AS2Send パイプラインによって計算されたデータ ストア内の MIC (該当する場合) を比較します。 詳細については、「 MDN メッセージ」を参照してください。
否認不可データベースに関連付けエントリを作成します。
[契約のプロパティ] ダイアログ ボックスの一方向 AS2 契約タブの [送信者 MDN 設定] ページで [ルーティング/配信オプションのメッセージ ボックスへの受信 MDN の処理] プロパティが設定されていない限り、MDN を削除します。
契約プロパティ ダイアログ ボックスの一方向 AS2 契約タブの 送信者 MDN 設定 ページで 受信 MDN をルーティング/配信オプションのために MessageBox に処理する プロパティが設定されている場合、受信パイプラインは、MDN を AS2 デコーダーを介してワイヤ形式のパススルー メッセージとしてルーティングし、MessageBox にドロップします。 ネットワーク形式の MDN には、すべての HTTP ヘッダーが含まれています。
注
メッセージ ボックスにドロップされた受信 MDN をサブスクライブするように送信ポートを設定できます。 受信した MDN をサブスクライブするには、送信ポート フィルターを
IsAS2MdnResponseMessage==True
に設定します。注
受信した MDN を処理するために AS2EdiReceive パイプラインを使用する場合、[契約のプロパティ] ダイアログ ボックスの [一方向 AS2 契約] タブの [送信者 MDN 設定] ページで[ルーティング/配信オプションのメッセージ ボックスに受信 MDN を処理する]プロパティを設定して MDN をメッセージ ボックスにルーティングすることはできません。 これを行おうとすると、MDN が EDI デコーダーに渡され、MDN を処理できないため、EDI エラーが発生します。 MDN がメッセージ ボックスに送信されない場合、AS2Decoder は MDN を使用するため、EDI デコーダーには渡されません。
メッセージ整合性チェック
メッセージ整合性チェック (MIC) は、MDN が元の送信メッセージに関連付けられることを確認するために使用されます。 AS2Send 送信パイプラインは、元の AS2 メッセージを生成するときにメッセージ ペイロードから MIC を計算し、データ ストアに MIC を格納します。 MDN が必要な場合、元のメッセージの受信者は MIC を生成し、MDN に追加します。 AS2MdnReceive 受信パイプラインが MDN を受信すると、署名された MDN が要求された場合、MDN 内の MIC とデータ ストア内の MIC が比較されます。
MDN の MIC とデータ ストア内の MIC の不一致は、受信側からのメッセージの送信または受信中にエラーが発生したことを示します。 このようなエラーで報告される値は次のとおりです。
AS2DispositionType: 失敗
AS2DispositionModifierExtensionType: エラー
AS2DispositionModifierExtensionDescription: 整合性チェックに失敗しました