私たちのシステムでデータを更新するためにお客様が使用できるWCFサービスを作成する準備ができています。したがって、インターネット上で利用可能でなければなりません。私はMessage Security
がインターネット経由でWCFサービスを利用できるようにする方法を知っているWCFに関する本を持っています。これは、サービスとクライアントの間にポイントツーポイント接続があることを保証できる環境でのみ使用する必要があるため、トランスポートセキュリティを使用しないでください。私はそれを得ましたか? したがって、カスタムのUserName
認証と組み合わせてMessage Securityを使用したいと考えています。私はそれを達成するために証明書を取得しなければならないことを理解します。当社はすでに当社ウェブサイトに使用されているSSL証明書を所有しています。WCFサービス - UserName認証による証明書とメッセージセキュリティ
- WCFサービスのメッセージセキュリティに同じ証明書を使用できますか?
そして
- ASMX Webサービスを期待してクライアントとの相互運用可能メッセージセキュリティの方法は何ですか?
私は自分の証明書をMakecertで作成しました。それは正常に働いたが、私はいつもクライアントマシンのTrusted Persons
に証明書を追加しなければならなかった。
- それは手動で
Trusted Persons
に証明書を追加するクライアントを強制することなく、上記の証明書を使用してMessage Security
を有効にすることは可能ですか?
それでは、次のシナリオを想定してみましょう:
ISA-サーバ/ファイアウォールの背後にある2つのウェブサーバがあります。このISAサーバには、www.company.comアドレスの証明書が格納されています。だから、すべてのSSLのものはそれによって処理されます。また、それに応じてWebサーバーに着信要求を転送します。新しく作成されたWCFサービスは、2番目のWebサーバー上で実行する必要があります。
- は、私が
Message Security
を使用できるようにWebサーバに証明書をコピーする必要がありますか?
もしそうなら、コピーの証明書は安全性のレベルを低下させるため、適切ではないと聞きました。証明書をWebサーバーに移動することは、Web-Server1上のWebサイトにも必要であるため、オプションではありません。
- この場合、どのような選択肢がありますか?
そして:
- は何に関係なく、与えられた要件を、このシナリオのためのベストプラクティスでしょうか?
...
Message SecurityをUserName認証で使用したいというご質問では、Message Securityの証明書のコピーが必要な理由がわかりません。私は何が欠けているのですか? – VoodooChild
MessageSecurityを使用すると、メッセージに署名や暗号化を行うことができます。したがって、証明書の秘密鍵が必要で、他の部分には公開鍵が必要です。 WCFサービスをホストするサーバーにプライベートキーがない場合、メッセージの署名または暗号化をどのように行う必要がありますか?または、その問題に関するメッセージを復号化する。メッセージセキュリティには、セキュリティコンテキストのみが含まれているため、トランスポートの機能に頼る必要はありません。 http://msdn.microsoft.com/en-us/library/ms733137.aspxを参照してください –