1

私たちの組織では、内部ネットワーク上で相互に通信する多くのWCFサービスをホストしています。通常、パフォーマンスのためにこれらのサービスにnetTcpBindingを使用します。現在、バインディングエンドポイントでセキュリティを有効にするかどうかについて議論があり、セキュリティを無効にすることが適切かどうか/いつ無効にするかを決定するために利用できる特定のガイドラインがあるかどうかを知りたいと思いました。

私はセキュリティをオンのままにすることを好む傾向があります

  1. これはデフォルト設定であるため、使用するために必要な構成が少なくて済みます
  2. これはデフォルト設定であるため、頻繁に使用することを目的としていました
  3. 安全性が低いのではなく、安全性が高い方が正しいと「感じる」だけです。

議論の反対側は次のとおりです。

  1. ネットワーク自体が保護されていると仮定して、セキュリティを使用する理由はありません
  2. セキュリティを使用するとパフォーマンスが低下します
  3. クライアントに認証を行う独自のクライアントがある場合、サービスへの認証が難しい場合があります(これは「ダブルホップ」シナリオとして説明される場合があると思います)

ベストプラクティスが何であれ、最終的な答えは最終的には「状況によって異なります」だと思います。ただし、実稼働環境でどのシナリオを優先する必要があるかを知りたいです。

4

3 に答える 3

1

すでにセキュリティなしでサービスを実行しているように聞こえます。したがって、明らかに誰かがあなたの現在の構成を採用することを決定しました。私は「壊れていない場合は修正しない」という原則に大きく依存する傾向があるため、シナリオで多くのWCFサービスの構成を変更するには、必要な時間と労力が必要な理由を説明する必要があります。そうするために投資されます。率直に言って、あなたのシナリオでは、セキュリティを支持するためにあなたが提起する3つのポイントは、私にとってそれをカットしません。

これは、新しい開発または新しい環境の決定を行うのとはまったく異なるシナリオです。そのシナリオでは、デフォルトの「セキュリティオン」(最小限の労力、コスト、およびパフォーマンスへの影響を想定)が私の推奨オプションです。

于 2012-06-14T22:57:07.267 に答える
1

あなたは正しいです-'それは異なります'。

セキュリティは良いものですが、セキュリティが必要ない場合(つまり、安全な環境で作業している場合、認証は必要ありません)、かなりのオーバーヘッドが発生する可能性があります。

私は最近、Windows認証が膨大なオーバーヘッド、要求サイズの2倍または3倍(多数の小さな要求)を引き起こしていることを発見したプロジェクトに取り組みました。パフォーマンスを大幅に向上させるために、認証をオフにするだけです。

WCFの良いところは、セキュリティが完全に構成可能であることです。コードにセキュリティの依存関係がないと仮定すると、構成を通じて、必要に応じて後日、非常に簡単にオンとオフを切り替えることができます。また、構成を使用していると仮定します。

于 2012-06-14T23:41:35.657 に答える
1

まだ言及されていませんが、どのようなデータを渡しているかについても考える傾向があります。私たちが銀行取引や何か重要なことを話しているなら、私は可能な限り多くのセキュリティを選ぶでしょう。一方、一部のデスクトップアプリに表示されているのがデータであり、アカウント番号、社会保障番号、クレジットカード情報などではない場合は、無効にしても問題はありません。

また、現在パフォーマンスが問題になっていますか?SLAが定義されており、満たす必要のあるトランザクション時間が存在する場合は、セキュリティを無効にすることで問題ない場合があります。

考慮すべきことがたくさんあるので、それはとても設定可能です:)

于 2012-06-14T23:54:23.547 に答える