2009-07-24 17 views
0

私は(広範な)WCFサービスを呼び出すASP.NETアプリケーションを開発しています。今、私は明らかに私の人生のためには私の頭の周りを正しく包まれることができないので、精神的な融解のいくつかの種類があります。WCFメッセージセキュリティを使用したUserName認証の使用

私は、Message SecurityとClientCredentialTypeがUserNameのws2007HttpBindingを使用しています。 WCFはASP.NETメンバーシッププロバイダを使用してユーザーの資格情報を検証しています。

このすべてが正常に動作しますが、私は明らかに今まで呼んで、ユーザーの詳細を含める必要があります。

var service = new MyService.MyServiceClient(); 
service.ClientCredentials.UserName.UserName = "my_username"; 
service.ClientCredentials.UserNane.Password = "mypassword"; 

.... etc ... 

service.Close(); 

ユーザーはちょうど私達に彼らのユーザ名とパスワードを与えているとして、これは、ログインページから簡単です。後でユーザーの資格情報で別のサービスを呼び出す必要があるときに、私は後で使用するためにパスワードを格納するのが快適ではありません。

明らかなものがありませんか?私はトークンなどについて読んだことがありますが、そのようなことを実装する方法については完全にはわかりません。私は一日中探検と読書をしてきましたが、私はまだ分かりませんので、何か助けて頂ければ幸いです!

答えて

1

最も簡単な方法は、本当にカスタムインデントでパスワードを保存することです。理想的な世界では、 Kerberosと代表団。偽装と委任に関するさらに詳しい情報を探してください。

かなり良い記事:

http://msdn.microsoft.com/en-us/library/ms998358.aspx#paght000025_usingimpersonation

しかし、すべてこのようなものは、メンバーシッププロバイダーでは動作しません。 Active DirectoryでWindows認証が必要です。

このトピックはあまりにも簡単なものではありません。アイデアと同じように、対話的にログオンしたユーザーの資格情報でWebサービスで本当に認証する必要がありますか?

HTHビット、 アレックス

+0

はいあなたはより多くの私は自分の資格情報を使用して、すべての時間をサービスを呼び出す必要はありませんそれについて考え、正しいです – Wayne

関連する問題