WSDualHttpBindingを使用してWCFサービスを作成しました。セキュリティモードは指定されていないため、WSDualHttpSecurityMode.Messageに設定されています。メッセージセキュリティモードのWCFサービスでの匿名関数呼び出し
それは許可されている資格情報とクライアントからサーバに接続し、正常に動作します。
私は許可されていない資格情報を持つサーバーに接続すると、私はSecurityNegotiationExceptionを取得します。
ザッツすべての罰金は、私が今、何をしたいのか、匿名で呼ばれるように許可されているサービスでは、1つの機能があることです。
だから私は、サービスを呼び出して、私の資格が許可されていないとき、私はのgetDescription(という関数を呼び出すようにしたい)私にサービスの説明を返すようしてみたいと思います。
なぜなら、私たちはいくつかのサービスをホストしており、それらをブロードキャストで発見するからです。クライアントが許可されていないサービスがある場合、サービスを再構成することによって、この問題を克服するために、サービスの詳細を表示する必要があります。
現時点ではWindowsベースの認証サービスしかありませんが、今後はカスタム認証のサービスもあります。私が最初にWindowsベースの自動化に接続しようとすると、これが失敗すると、ユーザーに資格情報を要求し、これらの資格情報でサービスに接続しようとします。私は資格情報をユーザーに求めていた時点で は、私は、同じマシン上で実行されている複数のサービスが存在しますので、ユーザは、サービスをより簡単に識別できるように、サービスに関するいくつかの詳細データを表示したいです。 – christian
WCF認証メカニズムの完全な置き換えが必要になると思います。これは通常、Windows認証の場合は内部、ユーザー名認証の場合は外部の2つのエンドポイントを公開することで簡単に実行されます。あなたがしようとしているのは、主にWCF/Webサービススコープの外です。 –
あなたは正しいと思います。たぶん私は2つのwcfサービスを提供する必要があります。 1つは安全であり、1つは安全ではないという説明を提供する。 – christian