2015-12-14 6 views
7

シナリオ:私たちは、ファイアウォール/ DMZ内のデータベースにリンクするWCF Webサービスを開発しているWCF - CMSでのWebコントロールを使用してクライアントのセキュリティ

。 Webサービスとクライアントアプリケーション(データキャプチャWebフォーム)は、インターネットに面したWebサーバー上でホストされる必要があります。これは、サードパーティのCMS(主なWebサイトをホストする)によってホストされるWebコントロールによってアクセスされる必要があるためです。

問題:

私たちは、データを確実にしたいのようしっかりできるだけ渡すことができますが、我々は自分自身と私たちのCMSプロバイダ間の共有証明書(またはその逆)については慎重になります。 Webコントロールがhttpsとしてホストされていることを望みますが、私が読んだすべてのドキュメントでは、証明書を認証する必要があることがわかります。私は追加のカスタムセキュリティをクライアントとsvc(カスタムバインド、コードで適用されるユーザー名/パスワード、IPアドレスによる呼び出しを制限する)の間に適用することを検討していましたが、他の誰かがこのシナリオを遭遇したかどうかを知りたかったのです。

第三者がアプリケーションのWebコントロールをホストしているのに、今のところ私は「それが証明書か何もない」コメントだけをオンラインで見つけたときにカスタムセキュリティを適用する例があるはずです。どんな助けや指導も大変ありがたいです。これまでに閲覧多くのリンクの

例は次のとおりです。

私が提案した設定を適用するために見てきました例えば<wshttpBinding><serviceCredentials>の下に、カスタムのユーザー名とパスワードのバリデーターを格納する新しい 'Secure'クラスを追加しましたが、"svc ...継承されたメンバーを実装していません..." errors。

<wsHttpBinding> 
    <binding name="EndpointBinding"> 
     <security mode="TransportWithMessageCredential"> 
     <transport clientCredentialType="None"/> 
     <message clientCredentialType="UserName"/> 
     </security> 
    </binding> 
    </wsHttpBinding> 

<serviceCredentials> 
    <userNameAuthentication 
    userNamePasswordValidationMode="Custom" 
customUserNamePasswordValidatorType="My.WcfSvc.Authentication.Secure, 
    My.WcfSvc" /> 
</serviceCredentials> 

答えて

1

私はあなたが書いたものから、あなたのアーキテクチャで最高の推測だけど、ここでは実装上のいくつかの考えている:あなたは絶対にこれを達成するためにWCFを使用する必要がある場合

  1. 、それサーバーからサーバーまでやっていますが、X-509証明書を使って行います。ポイントツーポイントのセキュリティを提供します。私はIPの制限、生産に実装されたゼロのメタデータなど、IIS上のセキュリティ実装にあまり重要ではないが付随的な側面も追加します。このサーバーをサーバーに使用せず、これらのメソッドを呼び出すWebベースのトラフィックがある場合は、あなたのアーキテクチャを再考し、オプション#2について考えてみましょう。

  2. これを別の方法で実行して、開発プロセスのもう一方の面を変更する時間がある場合は、HTTPSを使用してJSONで配信されるWeb APIのトークンベースのアーキテクチャを使用することをお勧めします。パートナに与えた事前共有トークンを識別できるだけでなく、IP/DNSの制限があるため、データを処理する前に2段階の認証プロセスを実行することもできます。これにより、すぐに期限切れになるデータ転送用の一時的なトークンを発行することができます。さらに、あなたとパートナーの間の事前共有塩を使用して最大512の暗号化を持つCryptoJSのようなものを使用してJSONを暗号化することもできます。https://code.google.com/archive/p/crypto-js/ - ほとんど不要ですが、一般的に2段階では、より堅牢な検証プロセスと安心感が得られます。

これもまた助けになりました。あなたの統合と幸運!

編集:私はこの特定のパーティーに少し遅れていることを実感しました。私はそれがうまくいったことを望む。何をOPにしたのですか?

関連する問題