0

私の質問は、「Oracle透過データ暗号化の復号化されていないアクセス」と重複していますが、SQLServer2008の場合です。


次のすべての記述が当てはまるようにSQLServer2008データベースセットアップできますか?

a)特定の列、場合によってはすべての列が暗号化されているため、データベースファイルに直接ファイルアクセスしても、攻撃者はレコードを取得できません。

b)暗号化された列は、承認されたユーザーに対して透過的に復号化されます。承認は、特定の役割または特権を持つことによって行われます。

c)「通常の」管理タスク(スキーマオブジェクトの調整、作成/削除、データベースの再起動、データディクショナリからの選択)を実行するための適切な権限を持つ管理者は、テーブルを選択できますが、暗号化された列には暗号化されたデータしか表示されません。

これが可能であれば、どうすればよいですか。それが不可能な場合、少なくともこれらの要件に「近づける」ために必要なオプションは何ですか?

a)は可能ですが、b)とc)についてはよくわかりません。

ありがとう。

4

1 に答える 1

1

いいえ、選択した列に対してのみ透過的データ暗号化を実行できないため、次のようになります。

透過的データ暗号化(TDE)は、データとログファイルのリアルタイムI/O暗号化と復号化を実行します。暗号化では、データベース暗号化キー(DEK)が使用されます。このキーは、リカバリ中の可用性のためにデータベースブートレコードに保存されます。DEKは、サーバーのマスターデータベースに格納されている証明書、またはEKMモジュールによって保護されている非対称キーを使用して保護された対称キーです。TDEは、データとログファイルを意味する「保存中」のデータを保護します。さまざまな業界で確立された多くの法律、規制、およびガイドラインに準拠する機能を提供します。これにより、ソフトウェア開発者は、既存のアプリケーションを変更することなく、AESおよび3DES暗号化アルゴリズムを使用してデータを暗号化できます。 Ref

TDEについて考慮すべき点がいくつかあります(Brad McGeheeのブログ提供)。

  • TDEはメモリ内のデータを保護しないため、データベースに対するDBO権限、またはSQLServerインスタンスに対するSA権限を持っている人なら誰でも機密データを見ることができます。つまり、TDEは、DBAが見たいデータを表示するのを防ぐことはできません。

  • TDEはきめ細かいものではありません。次に、データベース全体が暗号化されます。

  • TDEはクライアントアプリケーションとSQLServer間の通信を保護しないため、ネットワーク上を流れるデータを保護するには、他の暗号化方式を使用する必要があります。

  • FILESTREAMデータは暗号化されていません。

  • SQL Serverインスタンス上のいずれかのデータベースでTDEがオンになっている場合、tempdbデータベースは自動的に暗号化されます。これにより、同じインスタンスで実行されている暗号化データベースと非暗号化データベースの両方のパフォーマンスが低下する可能性があります。

  • TDEの実装に必要なリソースは列レベルの暗号化よりも少なくなりますが、それでもオーバーヘッドが発生するため、CPUのボトルネックが発生しているSQLServerでTDEを使​​用できなくなる可能性があります。

  • TDEで暗号化されたデータベースは、SQLServer2008の新しいバックアップ圧縮を利用できません。バックアップの圧縮と暗号化の両方を利用する場合は、SQLバックアップなどのサードパーティのアプリケーションを使用する必要があります。これにより、ペナルティなしでこれらのタスクの両方を実行できます。

これは興味深いかもしれません:方法:データの列を暗号化する

于 2010-07-05T06:38:21.503 に答える