SQL Server 2008 - 透過的データ暗号化による復号化されていないアクセス

StackOverflow https://stackoverflow.com/questions/3177541

  •  02-10-2019
  •  | 
  •  

質問

私の質問は - と重複しています。 Oracle Transparent Data Encryption の復号化されていないアクセス - ただし SQL Server 2008 の場合。


を設定できますか SQLサーバー2008 次のステートメントがすべて真であるという方法でデータベースを作成しますか?

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

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

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

これが可能であれば、どうすればよいでしょうか。それが不可能な場合、少なくともこれらの要件に「近づく」ためにはどのような選択肢がありますか?

a) は可能であることはわかっていますが、b) と c) についてはわかりません。

ありがとう。

役に立ちましたか?

解決

いいえ、選択した列に対してのみ透過的データ暗号化を実行することはできないためです。

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

TDE について考慮すべき点がいくつかあります (提供: ブラッド・マギーのブログ):

  • TDE はメモリ内のデータを保護しないため、データベースに対する DBO 権限、または SQL Server インスタンスに対する SA 権限を持つユーザーであれば誰でも機密データを見ることができます。つまり、TDE では、DBA が見たいデータを表示することを妨げることはできません。

  • TDE は細分性がありません。その後、データベース全体が暗号化されます。

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

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

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

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

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

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top