2011-06-21 14 views
0

うまくいえば簡単に質問できます。WCF - 証明書を使用してメッセージセキュリティを使用してクライアントを認証する

既知のパーティーが消費するWCFサービスを保護したいと考えています。私たちの組織は彼らを信頼し、その逆もあります。

このサービスは既にIPアドレスによって制限されているため、発信者がネットワークから来ている必要があります。

しかし、私はその組織内の悪質な開発者から保護されたいと思います。理論上、彼らは悪いアプリを書いて、このネットワークのどこにでもインストールして、データを返すサービスを呼び出すことができます。

私はこれを回避する方法として、ピア証明書を使用して検証されるクライアント証明書も使用すると考えています。各要求は、WCFサービスで検証するこの証明書を送信し、データを返送します。

私の質問 - これは、上記の悪意のある開発者のシナリオを守るためのものですか?要求はクライアント証明書がインストールされたサーバー上で発生しなければならないことを知っています(右?) - 悪意のある開発者が不正なアプリケーションを取得することは難しいはずです。私たちはそれをクライアントアプリケーションに結びつけることができないのは残念ですが、それとも可能でしょうか?

何か助けていただきありがとうございます - 私はこれについて私の理解を釘付けにしておきたいと思います!

答えて

1

特定の着信クライアント証明書に基づいてサービスへのアクセスを許可する場合は、その証明書の秘密キーと同じ安全性が必要です。つまり、秘密鍵が他の組織で安全に保たれている場合、サービスは安全です(暗号化に関して証明書の公開鍵/秘密鍵のペアと同じくらい安全です)。

たとえば、攻撃者がリモートサーバー上でプライベートキーを侵害したり、リモートサーバーにコピーしたりすると、その攻撃者はサービスにアクセスできます。一度秘密鍵を取得すると、クライアント証明書を使用してSSL接続を使用して接続することができるため、IPアドレスチェックを渡すだけで済みます。クライアント証明書の秘密鍵を保護します。

1

クライアントが特定の証明書で認証されているかどうかを確認することができます。 Custom Certificate Validatorと書いて、自分の必要に応じて証明書を検証することもできます。ただし、攻撃者が自分の環境で信頼できる証明書の秘密鍵を使用できると仮定した場合、攻撃者は基本的に何かを行うことができ、サービスを保護する方法はないと思われるかもしれません。

関連する問題