0

WCFでの安全なWebサービス

バックグラウンド

  • データの暗号化/復号化を行う安全なWCFサービスを作成したいと考えています。暗号化および復号化されるデータの性質には、可能な限り最高レベルのセキュリティが必要です。
  • このサービスの利用者は、私たちのネットワーク内のアプリケーションになります。asp.net Webサイト、その他のwcfサービス、コンソールアプリケーション、および場合によってはLinux上で実行されるJavaベースのアプリケーションになります。
  • コンシューマーは、ドメインメンバーシップを持たないローカルコンピューターアカウントで実行されます。

私はwcfのセキュリティについて多くのことを読み、その概念を大いに理解しています。同様のニーズを持つ他の人にとってうまく機能するリファレンスアーキテクチャを探しています。

質問

  1. 新しいwcfサービスは、資格情報を格納するためにデータベースなどに依存できず、Windowsドメインのメンバーである消費者に依存できない場合、どの認証方法を使用する必要がありますか。消費者によって機能が若干変わるので、サービス内で消費者を正しく識別できるはずです。
  2. どのタイプの転送セキュリティを使用する必要がありますか-トランスポート/メッセージ/混合?これらのいずれかにパフォーマンスの考慮事項がありますか?
  3. 他に何を考えるべきですか?
4

1 に答える 1

0
  1. 認証にクライアント証明書を使用します。顧客を識別するには、カスタムヘッダー付きのメッセージ契約を使用します。各クライアントは、ヘッダーに一意の値を入力する必要があります。
  2. あなたの場合、トランスポートセキュリティを使用することをお勧めします。メッセージセキュリティを使用することには、主に2つの欠点があります。パフォーマンスと、Javaクライアントをサポートする必要があると述べたように、相互運用性にとってより重要なことです。WCFのセキュリティについてはすでにたくさん読んでいるとのことですが、見逃した場合に備えて、トランスポートとメッセージのセキュリティに関する優れた記事を紹介します。
  3. サービスバインディングに注意してください。考えられるJavaクライアントを考慮してbasicHttpBindingを使用することをお勧めします。

それが役に立てば幸い!

編集済み: ヘッダー値はプライベート値である必要があります。あなたとあなたのクライアントだけがそれについて知っているべきです。Gmailのパスワードを知っていれば、ログイン情報を見つけるのにそれほど時間はかかりません。安全性が十分でない場合は、カスタムヘッダーをスキップして、各クライアントをIPまたはIPのセットにマップすることができます。たとえば、IP 12.32.456.10はクライアントAに対応します。次に、このマッピングをカスタム構成ファイルセクションに保存し、このセクションを暗号化して、サービスファイルにアクセスできるユーザーでもマッピングを取得できないようにすることができます。

答えが役に立った場合は、それを役立つものとしてマークすることを忘れないでください;)

于 2013-01-16T16:27:53.957 に答える