WCF サービスを保護する最善の方法は何ですか? サービス呼び出しにヘッダーを追加し、ヘッダーを検証するメッセージ インスペクターをクライアントに配置する必要がありますか?
その人がサービスを使用するために正しいユーザー名とパスワードを提供し、すべてが暗号化されていることを確認する必要があります。これはインターネット経由であり、HTTP バインディングを使用します。
それは、「安全」が何を意味するかによって異なります。クライアントを認証する場合は、SSL (https) から始めて、認証技術に進むことができます。あなたは本当にあなたの目標を詳しく説明する必要があります...
HTTP に制限されている場合、パフォーマンスは低下しますが、移植性は高くなります。
しかし、WS-Security で HTTP を暗号化して保護できると思います。
トランスポートおよびメッセージ セキュリティ モード
WCF で転送セキュリティを実装するには、
トランスポート セキュリティ モードとメッセージ セキュリティ モードの 2 つの主なメカニズムが使用されます。
トランスポート セキュリティ モードは、HTTPS などのトランスポート レベルのプロトコルを使用して転送セキュリティを実現します。トランスポート モードには、広く採用されており、多くのプラットフォームで使用でき、計算の複雑さが少ないという利点があります。ただし、ポイントツーポイントからのみメッセージを保護するという欠点があります。
一方、メッセージ セキュリティ モードは、WS-Security (およびその他の仕様) を使用して転送セキュリティを実装します。メッセージ セキュリティは SOAP メッセージに直接適用され、SOAP エンベロープ内にアプリケーション データとともに含まれているため、トランスポート プロトコルに依存せず、拡張性が高く、エンド ツー エンドのセキュリティを確保できるという利点があります (ポイントに対して-ポイントへ); SOAP メッセージの XML の性質を処理する必要があるため、トランスポート セキュリティ モードよりも数倍遅くなるという欠点があります。