web-dev-qa-db-ja.com

アプリケーションレベルの暗号化キーをADプロファイルに関連付けることは適切ですか

基盤となる技術は、Windows DPAPIと.NETによる ProtectedData を介した使用です。このシナリオでは、さまざまなサーバー、Web Api、ユーザーがログインできるWebサイト、およびバックグラウンドで実行されているWindowsサービスで実行されるアプリケーションがあります。これらはすべて、アプリケーションの特定のADアカウントで実行されます。

暗号化キーはプロファイルに対して保存され、これによりすべてのコンポーネントがデータにアクセスできるようになります。すべて正常に動作しています。

ただし、プロファイルを操作/破損すると、アプリケーションがデータにアクセスできなくなる可能性があるという点で、キーをADプロファイルに関連付けることには固有のリスクがありますか?それとも、このリスクは無視できるほど低いのでしょうか?

ADが関与しないように、.NETの他の暗号化オブジェクトを使用してキーをアプリケーションレベルで保存する方がよいでしょうか。

私は最初にサイトを検索し、対称暗号化について この投稿 を見つけ、 Microsoft によって優れたホワイトペーパーにリンクされました。大規模である程度分散したアプリケーションに適しているかどうかを確認します。リスクはあると思いますが、長期的には気になるくらいの高さかどうかはわかりません。

1
DiskJunky

リスク/問題/質問のいくつかを見てください:

  1. ADはオンラインで使用するように設計されたことはありません 2016年に見られたような問題があります。
  2. サービスアカウントは 最小特権の原則 を満たしていますか?
  3. 整合性:プロファイルが破損するとどうなりますか?バックアップはありますか?それらは暗号化されていますか?
  4. 機密性:データの機密性と 違反にかかる費用
  5. 可用性:どのくらいの期間の停止を許容できますか?
  6. 違反の検出:異常なアクティビティを監視していますか?
  7. 違反後:キーを取り消すことができますか?新しいキーをどのように発行しますか?
  8. vault または octopus deploy などの分散システム用に設計された他のオプション
  9. 知っている

リスクに影響を与えるのは、所属する業界によって異なります。それはめったに一人の決定ではなく、ビジネスに伝えられるべきです。

tl dr個人的には、MSが Key Store Management Services を持っているので、栄光のキーストアとしての分散システムのADに対してアドバイスします。

1
lloyd