3

私たちの実稼働環境には、負荷分散された 3 つのサーバーがあります。各サーバーには、IIS に 9 つのサイトがあります。各サイトには、1 ~ 15 個の異なるアプリがあります。

3 つのサーバーすべてで適切な暗号化/復号化を維持するには、対応するアプリに同じ validationKey と decryptionKey を使用する必要があります。これは、次の 3 つのレベルで設定できます。 - machine.config のサーバー レベル - web.config のサイト レベル - web.config のアプリ レベル

各レベルで設定することには明らかに長所と短所がありますが、サーバー対サイト対アプリでそれを行う具体的な理由を誰かが与えることができるかどうか疑問に思っていました.

machineKey Web ファームの展​​開に関する考慮事項セクションに、宣伝文があります。

アプリケーションを同じサーバー上の他のアプリケーションから分離する場合は、ファーム内の各サーバーの各アプリケーションの Web.config ファイルに を配置します。

validationKey は、3 つのサーバーにまたがる最大 100 の異なるアプリで異なるキーを使用することを正当化するのに十分な脅威ベクトルですか? 分かってる。どのくらいのリスクを冒しても構わないと思っていますか? 私はどの業界にいますか?自分のデータで誰かに何をしてもらいたいですか? 等

もちろん、最終的には、新しいサイトやアプリが追加されたときに基盤全体を確実にカバーするために、3 つのレベルすべてに配置することになると思います。しかし、私は回帰テストの取り組みをあまり楽しみにしていません。

ありがとう、マット

4

1 に答える 1

0

個人が設定ファイル内の「ノイズ」と見なすものに主に関連していますが、どちらのレベルでも設定を保存することは(もちろん適切に)機能的に同じです。

たとえば、同じサーバー上のすべてのアプリで共有される設定がある場合、そこにあるすべての web.config で繰り返すのではなく、machine.config の適切な候補になる可能性があります。

私の意見では、検証/暗号化キーの場所はweb.configファイルにあります-同じサーバー上の複数の(特に認証レベルからは無関係な)Webアプリ間でそれらを共有したくない(明らかなセキュリティ上の問題)。

「念のために」利用可能なすべてのレベルに同じ設定を配置するのはばかげています (より適切な言葉がないため)。しないでください。将来 (あなたが去ったときに) メンテナンス担当者を混乱させることになり、余分なものや「不要なもの」は悪用の誘いになることがよくあります。

于 2012-01-26T05:05:56.663 に答える