質問

クライアント側情報を渡す必要があります(この例では、文字列を言うことができます)。サービスは、この文字列(currentRole)とユーザー/パスの資格情報を使用して、現在の役割に関連付けられたユーザーのクレームセットを取得します。

これまでに遭遇した解決策は次のとおりです。

1)クライアントから送信されるメッセージヘッダーを変更し、メッセージヘッダーがサービス側にあることを確認します。

2)文字列を保存するには、カスタムセキュリティトークンを必要とするカスタムクレデンシャルを使用します。

既存のトークン/資格情報に情報を追加するなど、私が見落としている他のアプローチはありますか?また、上記のソリューションの長所/短所はありますか?

ありがとう。

役に立ちましたか?

解決

このヘッダーをメッセージに追加するクライアント側の動作を記述することもできます(したがって、コードで自分で行うことを考える必要はありません)。

IClientMessageInspector を実装し、 BeforeSendRequest メソッドのオーバーライドでメッセージヘッダーを追加できます。この動作を各クライアントエンドポイントに追加すると、各送信メッセージにそのメッセージヘッダーが自動的に追加されます。

こちらをご覧ください CodeProjectの記事いくつかのスターター情報、およびこの詳細なノウハウについては、ブログの投稿をご覧ください。

マーク

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top