1

WIFを使用してカスタムSTSを構築しています。SecurityTokenServiceクラスを継承した後、WSTrustServiceHostとIWSTrust13SyncContractを使用して、STSをWCFサービスとしてホストしました。そして、それは単なるプロトタイプSTSなので、BasicHttpBindingを使用していました。

クライアント側では、WSTrustChannelFactoryを使用してSTSに接続し、出力クレームを正常に取得できます。

しかし、認証情報(ユーザー名とパスワード)を追加しようとすると、STSに渡すことができないことがわかりました。

1、BasicHttpBindingを使用していた場合、クライアント側のfactory.Credentials.UserName.UserNameおよび.Passwordを介して指定したにもかかわらず、STSでユーザー名とパスワードが見つかりません。

2、UserNameWSTrustBinding(SecurityMode.Transport)を使用するように変更しましたが、STSでユーザー名とパスワードを取得できません。

3、STSでは、メソッドGetScope、GetOutputClaimsIdentityのパラメーターは、クライアント側から指定したものではなく、サーバーコンソールアプリケーションを実行するプリンシパルです。

4、別のUserNameSecurityTokenHandlerを登録し、そのValidateTokenメソッドをオーバーライドしました。しかし、STSはこのメソッドを呼び出さなかったようです。そして、STSは、CreateTokenの実装がないという例外を提起しました。

5、組み込みのWindowsUserNameTokenHandlerを試しましたが、同じ例外が発生しました。

誰かが見て、対処方法について私にいくつかの提案をすることができますか?

4

0 に答える 0