BizTalk Adapter Pack (BTS 2006 R2 用の WCF ベース) の Oracle アダプターを使用しています。「solicit-response」送信ポートの構成では、Oracle のユーザー名とパスワードを使用してデータベースに接続しました。
ここで、それを変更して SSO を使用したいと思います。ここまでで、アフィリエイト アプリケーションを作成し、BTS ホスト インスタンスの「ユーザー ID」を Oracle データベース ユーザーの詳細にマッピングしました。
アプリケーションを実行すると、「チケットを引き換えることができません。メッセージにチケットがありません」というエラーが常に表示されます。
BTS のドキュメントを読んでいると、"ms-help://MS.BTS.2006/BTS06CoreDocs/html/c7bf755c-c37d-4b19-9817-a7f42e1e9656.htm" で次のことがわかりました。オーケストレーションが送信アダプターを呼び出すシナリオでは、 BizTalk メッセージ エンジンはメッセージをメッセージ ボックス データベースに送信します。オーケストレーションでは、チケットを含むメッセージのSSOTicketコンテキスト プロパティとMicrosoft.BizTalk.XLANGs.BTXEngine.OriginatorSIDコンテキスト プロパティの両方が維持されるようにする必要があります。アダプターは、メッセージ ボックス データベースからこのメッセージを受信すると、暗号化されたチケットを使用して RedeemTicket メソッドを呼び出し、SSO ストアからバックエンド資格情報を取得します。オーケストレーションを設計するユーザーは、このプロパティをメッセージに具体的にコピーする必要があります。
しかし、SSO チケットを持たない SQL 統合接続を介してメッセージを受け取ります。
この問題の解決を手伝ってください。