Silverlight Webアプリケーションがあり、wcfサービスを使用してクライアント側にデータを読み込んでいます。WCFサービスを保護する必要がありますか?ネットワーク上にいる人は誰でもサービスのメソッドを呼び出すことができますか?
2 に答える
ええ、彼らがURLを知っていれば、彼らはサービスを見てアクセスすることができます。
そして、それを見ることができれば、「サービス参照の追加」を行うだけで、利用可能なすべてのメソッドを見ることができます。
また、silverlightはbasichttpbindingを使用するため、ファイアウォールを介して機能します(通常、ファイアウォールはhttpトラフィックを許可します)。
機密情報が含まれている場合は、セキュリティで保護する必要があります。
デフォルトでは、隠すことによるセキュリティが確保されるため、WCFサービスのプレゼンスをブロードキャストしていない場合、WCFサービスが検出または呼び出される可能性は低くなります。さらに、適切なクライアントプロキシを構成しないと、それを使用するのは非常に困難です。MEXエンドポイントを設定していない場合でも、かなり安全です。
とはいえ、あなたは実際に通話を承認していません。理論的には、WCFサービスを見つけて、それを呼び出すためのプロキシを作成することは可能です。したがって、安全を確保したい場合は、WCF認証を検討することをお勧めします。設定はかなり簡単で、ユーザー名-パスワード、Windowsアカウント、X.509証明書などのさまざまなオプションを使用できます。それぞれに長所と短所があります。
この記事は非常に詳細になり、他にもあります。http://msdn.microsoft.com/en-us/magazine/cc948343.aspx