2012-02-27 5 views
1

を格納するので、私はのようなクライアント設定したユーザ名とパスワードを必要とする:WCF UserNameOverTransportのベストプラクティスは、私は、WebサービスのUserNameOverTransportを使用する必要が私のクライアントアプリケーションでは、ユーザー名とパスワード

client.ClientCredentials.UserName.UserName =「アカウント"; client.ClientCredentials.UserName.Password = "password";

ユーザー名とパスワードを保存するのがベストプラクティスですか?

私の観点からは、設定ファイルに資格情報を保存することはお勧めできません。

[更新] 私はこの質問をしましたが、WCFは設定ファイルに資格情報を保存する標準的な機能を提供するか、エンドポイントの助けを借りてセットアップする機能を持っています。あなたが設定でユーザー名とパスワードを保存する必要はありません http://blog.shutupandcode.net/?p=22

+0

は、すべてのクライアントのために、固定のユーザー名とパスワードはありますか?そうであれば、設定でそれらを持つことができますが、それらを暗号化して、解読部分があなたのサーバ上にあるはずです。 – Rajesh

+0

いいえ、すべてのクライアントで修正することはできません。 –

+0

これは、資格情報を要求するWebページのような各クライアントからの入力である必要があります。または、Windowsアプリケーションで資格情報を要求するフォーム – Rajesh

答えて

0
を確保しようとしている:あなたが示しているよう

ユーザー名とパスワードは、コード内から設定する必要があります

資格情報をapp.config/web.configに保存する場合は、ProtectedDataクラスまたはProtectedConfigurationProviderを使用して資格情報を暗号化できます。 (ほとんどの詳細な少なくともから注文)詳細は以下のリンクを参照してください:

http://geekswithblogs.net/afeng/archive/2006/12/10/100821.aspx

http://weblogs.asp.net/jgalloway/archive/2008/04/13/encrypting-passwords-in-a-net-app-config-file.aspx

http://msdn.microsoft.com/en-us/library/89211k9b%28v=vs.80%29.aspx

http://msdn.microsoft.com/en-us/library/53tyfkaw%28v=vs.80%29.aspx

0

私が探した例は次のリンクにより溶液です。通常はconfigに格納するものは、エンドポイント、動作、セキュリティ設定などのクライアント設定です。

client.ClientCredentials.UserName.UserName = "account"; 
client.ClientCredentials.UserName.Password = "password"; 

あなたからこれらの値を取得しますどこそれは完全にあなた次第ですが、どのようにあなたがそれを

+0

再構築なしで資格情報を変更する機能を保存すると良いでしょう。 –

+2

@ Vadim911何かをハードコードしないでください。ちょうどあなたに納得のいくところから読んでください。どこかで暗号化したり、ユーザーに入力してもらうことができます。コードから設定するだけの方法です。 –

関連する問題