Transparent Data Encryption (TDE)Transparent Data Encryption (TDE)

適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance はいAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics はいParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance はいAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics はいParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse

透過的なデータ暗号化 (TDE) では、SQL ServerSQL ServerAzure SQL データベースAzure SQL Database、および Azure Synapse AnalyticsAzure Synapse Analytics のデータ ファイルを暗号化します。Transparent Data Encryption (TDE) encrypts SQL ServerSQL Server, Azure SQL データベースAzure SQL Database, and Azure Synapse AnalyticsAzure Synapse Analytics data files. この暗号化は、保存データの暗号化として知られています。This encryption is known as encrypting data at rest.

データベースをセキュリティで保護するのに役立つように、次のような対策を講じることができます。To help secure a database, you can take precautions like:

  • セキュリティで保護されたシステムの設計。Designing a secure system.
  • 機密資産の暗号化。Encrypting confidential assets.
  • データベース サーバーに対するファイアウォールの構築。Building a firewall around the database servers.

しかし、ドライブやバックアップ テープなどの物理メディアを盗む悪意のあるユーザーは、データベースを復元またはアタッチし、そのデータを閲覧することができます。But a malicious party who steals physical media like drives or backup tapes can restore or attach the database and browse its data.

解決策の 1 つは、データベース内の機微なデータを暗号化し、証明書を使用して、データを暗号化するキーを保護することです。One solution is to encrypt sensitive data in a database and use a certificate to protect the keys that encrypt the data. この解決策により、キーを持たないユーザーによるデータの使用を防ぐことができます。This solution prevents anyone without the keys from using the data. しかし、このような保護は事前に計画しておく必要があります。But you must plan this kind of protection in advance.

TDE では、データとログ ファイルの I/O 暗号化とその解除をリアルタイムで行います。TDE does real-time I/O encryption and decryption of data and log files. 暗号化では、データベース暗号化キー (DEK) が使用されます。The encryption uses a database encryption key (DEK). データベース ブート レコードでは、回復中に使用できるようにキーを格納します。The database boot record stores the key for availability during recovery. DEK は対称キーです。The DEK is a symmetric key. これは、サーバーのマスター データベースに格納されている証明書で、または EKM モジュールによって保護されている非対称キーで保護されます。It's secured by a certificate that the server's master database stores or by an asymmetric key that an EKM module protects.

TDE では、保存データ (データとログ ファイル) が保護されます。TDE protects data at rest, which is the data and log files. これにより、ユーザーは多くの法律、規制、およびさまざまな業界で制定されたガイドラインに従うことになります。It lets you follow many laws, regulations, and guidelines established in various industries. この機能により、ソフトウェア開発者は、既存のアプリケーションを変更することなく、AES および 3DES 暗号化アルゴリズムを使用してデータを暗号化できます。This ability lets software developers encrypt data by using AES and 3DES encryption algorithms without changing existing applications.

TDE についてAbout TDE

データベース ファイルの暗号化は、ページ レベルで行われます。Encryption of a database file is done at the page level. 暗号化されたデータベースのページは、ディスクに書き込まれる前に暗号化され、メモリに読み込まれるときに暗号化解除されます。The pages in an encrypted database are encrypted before they're written to disk and are decrypted when read into memory. TDE では、暗号化されたデータベースのサイズが増えることはありません。TDE doesn't increase the size of the encrypted database.

SQL DatabaseSQL Database に該当する情報Information applicable to SQL DatabaseSQL Database

TDE を SQL DatabaseSQL Database V12 と共に使用すると、マスター データベースに格納されるサーバー レベルの証明書が SQL DatabaseSQL Database によって自動的に作成されます。When you use TDE with SQL DatabaseSQL Database V12, SQL DatabaseSQL Database automatically creates for you the server-level certificate stored in the master database. SQL DatabaseSQL Database で TDE データベースを移動する場合、移動操作のためにデータベースの暗号化を解除する必要はありません。To move a TDE database on SQL DatabaseSQL Database, you don't have to decrypt the database for the move operation. TDE と SQL DatabaseSQL Database の使用について詳しくは、「Azure SQL Database の Transparent Data Encryption」を参照してください。For more information on using TDE with SQL DatabaseSQL Database, see Transparent Data Encryption with Azure SQL Database.

SQL ServerSQL Server に該当する情報Information applicable to SQL ServerSQL Server

データベースをセキュリティで保護した後、正しい証明書を使用して復元することができます。After you secure a database, you can restore it by using the correct certificate. 証明書の詳細については、「 SQL Server Certificates and Asymmetric Keys」をご覧ください。For more information about certificates, see SQL Server Certificates and Asymmetric Keys.

TDE を有効にした後、証明書とそれに関連する秘密キーをすぐにバックアップします。After you enable TDE, immediately back up the certificate and its associated private key. 証明書が使用できなくなった場合、または別のサーバーでデータベースを復元またはアタッチした場合は、証明書と秘密キーのバックアップが必要になります。If the certificate becomes unavailable, or if you restore or attach the database on another server, you need backups of the certificate and private key. そうしないと、データベースを開くことができません。Otherwise, you can't open the database.

データベースで TDE を無効にした場合でも、暗号化証明書は保持するようにしてください。Keep the encrypting certificate even if you've disabled TDE on the database. データベースは暗号化されていませんが、トランザクション ログの一部が保護されたままになる可能性があります。Although the database isn't encrypted, parts of the transaction log might remain protected. また、データベースの完全バックアップを行うまで、一部の操作で証明書が必要になる場合があります。You also might need the certificate for some operations until you do a full database backup.

有効期限の過ぎた証明書を引き続き使用して、TDE でデータを暗号化および暗号化解除することができます。You can still use a certificate that exceeds its expiration date to encrypt and decrypt data with TDE.

暗号化階層Encryption hierarchy

TDE 暗号化のアーキテクチャを次の図に示します。The following illustration shows the architecture of TDE encryption. SQL DatabaseSQL Database で TDE を使用する場合に、ユーザーが構成できるのは、データベース レベルの項目 (データベース暗号化キーと ALTER DATABASE の部分) のみとなります。Only the database-level items (the database encryption key and ALTER DATABASE portions) are user-configurable when you use TDE on SQL DatabaseSQL Database.

Transparent Database Encryption のアーキテクチャ

TDE を有効にするEnable TDE

TDE を使用するには、次の手順を実行します。To use TDE, follow these steps.

適用対象: SQL ServerSQL ServerApplies to: SQL ServerSQL Server.

  1. マスター キーを作成します。Create a master key.

  2. マスター キーで保護された証明書を作成または取得します。Create or obtain a certificate protected by the master key.

  3. データベース暗号化キーを作成し、証明書を使用して保護します。Create a database encryption key and protect it by using the certificate.

  4. 暗号化を使用するようにデータベースを設定します。Set the database to use encryption.

次の例では、サーバーにインストールされている MyServerCert という名前の証明書を使用する、AdventureWorks2012 データベースの暗号化とその解除を示します。The following example shows encryption and decryption of the AdventureWorks2012 database using a certificate named MyServerCert that's installed on the server.

USE master;
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<UseStrongPasswordHere>';
go
CREATE CERTIFICATE MyServerCert WITH SUBJECT = 'My DEK Certificate';
go
USE AdventureWorks2012;
GO
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_128
ENCRYPTION BY SERVER CERTIFICATE MyServerCert;
GO
ALTER DATABASE AdventureWorks2012
SET ENCRYPTION ON;
GO

暗号化および暗号化解除の操作は、 SQL ServerSQL Serverによってバックグラウンド スレッドでスケジュールされます。The encryption and decryption operations are scheduled on background threads by SQL ServerSQL Server. これらの操作の状態を表示するには、この記事で後述する表のカタログ ビューと動的管理ビューを使用します。To view the status of these operations, use the catalog views and dynamic management views in the table that appears later in this article.

注意事項

TDE が有効になっているデータベースのバックアップ ファイルも、データベース暗号化キーを使用して暗号化されます。Backup files for databases that have TDE enabled are also encrypted with the database encryption key. このため、これらのバックアップを復元するときには、データベース暗号化キーを保護する証明書を使用できる必要があります。As a result, when you restore these backups, the certificate that protects the database encryption key must be available. したがって、データベースをバックアップするだけでなく、必ず、サーバー証明書のバックアップを保持するようにしてください。Therefore, in addition to backing up the database, make sure to maintain backups of the server certificates. 証明書が使用できなくなると、データの損失が発生します。Data loss results if the certificates are no longer available.

詳細については、「 SQL Server Certificates and Asymmetric Keys」をご覧ください。For more information, see SQL Server Certificates and Asymmetric Keys.

コマンドと関数Commands and functions

次のステートメントで TDE 証明書を受け入れるには、データベース マスター キーを使用して証明書を暗号化します。For the following statements to accept TDE certificates, use a database master key to encrypt them. それらをパスワードのみを使用して暗号化した場合、ステートメントでは暗号化機能として受け付けられません。If you encrypt them by password only, the statements reject them as encryptors.

重要

TDE で使用した後に証明書のパスワードを保護すると、再起動後にデータベースにアクセスできなくなります。If you make the certificates password protected after TDE uses them, the database becomes inaccessible after a restart.

次の表に、TDE のコマンドと関数のリンクと説明を示します。The following table provides links and explanations of TDE commands and functions:

コマンドまたは関数Command or function 目的Purpose
CREATE DATABASE ENCRYPTION KEY (Transact-SQL)CREATE DATABASE ENCRYPTION KEY (Transact-SQL) データベースを暗号化するキーを作成しますCreates a key that encrypts a database
ALTER DATABASE ENCRYPTION KEY (Transact-SQL)ALTER DATABASE ENCRYPTION KEY (Transact-SQL) データベースを暗号化するキーを変更しますChanges the key that encrypts a database
DROP DATABASE ENCRYPTION KEY (Transact-SQL)DROP DATABASE ENCRYPTION KEY (Transact-SQL) データベースを暗号化するキーを削除しますRemoves the key that encrypts a database
ALTER DATABASE SET のオプション (Transact-SQL)ALTER DATABASE SET Options (Transact-SQL) TDE を有効にするために使用される ALTER DATABASE オプションについて説明しますExplains the ALTER DATABASE option that is used to enable TDE

カタログ ビューと動的管理ビューCatalog views and dynamic management views

次の表に、TDE のカタログ ビューと動的管理ビューを示します。The following table shows TDE catalog views and dynamic management views.

カタログ ビューまたは動的管理ビューCatalog view or dynamic management view 目的Purpose
sys.databases (Transact-SQL)sys.databases (Transact-SQL) データベース情報を表示するカタログ ビューCatalog view that displays database information
sys.certificates (Transact-SQL)sys.certificates (Transact-SQL) データベース内の証明書を表示するカタログ ビューCatalog view that shows the certificates in a database
sys.dm_database_encryption_keys (Transact-SQL)sys.dm_database_encryption_keys (Transact-SQL) データベースの暗号化キーと暗号化の状態に関する情報を提供する動的管理ビューDynamic management view that provides information about a database's encryption keys and state of encryption

アクセス許可Permissions

TDE の各機能とコマンドには、上の表で説明されているように、個別の権限要件があります。Each TDE feature and command has individual permission requirements as described in the tables shown earlier.

TDE に関係するメタデータを表示するには、証明書に対する VIEW DEFINITION 権限が必要です。Viewing the metadata involved with TDE requires the VIEW DEFINITION permission on a certificate.

考慮事項Considerations

データベース暗号化操作の再暗号化スキャンが実行されている間は、データベースに対するメンテナンス操作が無効になります。While a re-encryption scan for a database encryption operation is in progress, maintenance operations to the database are disabled. データベースに対してシングル ユーザー モード設定を使用して、メンテナンス操作を行うことができます。You can use the single-user mode setting for the database to do maintenance operations. 詳細については、「 データベースをシングル ユーザー モードに設定する」を参照してください。For more information, see Set a Database to Single-user Mode.

データベースの暗号化の状態を確認するには、sys.dm_database_encryption_keys 動的管理ビューを使用します。Use the sys.dm_database_encryption_keys dynamic management view to find the state of database encryption. 詳細については、この記事の前述の「カタログ ビューと動的管理ビュー」トピックを参照してください。For more information, see the "Catalog views and dynamic management views" section earlier in this article.

TDE では、データベース内のすべてのファイルとファイル グループが暗号化されます。In TDE, all files and filegroups in a database are encrypted. データベースに READ ONLY とマークされているファイル グループがあると、データベースの暗号化操作は失敗します。If any filegroup in a database is marked READ ONLY, the database encryption operation fails.

データベースをデータベース ミラーリングまたはログ配布で使用する場合は、両方のデータベースが暗号化されます。If you use a database in database mirroring or log shipping, both databases are encrypted. トランザクション ログは、それらの間で送信されるときに暗号化されます。The log transactions are encrypted when sent between them.

重要

データベースを暗号化の対象として設定すると、フルテキスト インデックスが暗号化されます。Full-text indexes are encrypted when a database is set for encryption. SQL Server 2008 より前の SQL Server バージョンで作成されたこのようなインデックスは、SQL Server 2008 以降でデータベースにインポートされ、TDE によって暗号化されます。Such indexes created in a SQL Server version earlier than SQL Server 2008 are imported into the database by SQL Server 2008 or later and are encrypted by TDE.

ヒント

データベースの TDE 状態の変更を監視するには、SQL Server Audit または SQL Database 監査を使用します。To monitor changes in the TDE status of a database, use SQL Server Audit or SQL Database auditing. SQL Server の場合、TDE は監査アクション グループ DATABASE_CHANGE_GROUP の下で追跡されます。これは「SQL Server 監査のアクション グループとアクション」で確認できます。For SQL Server, TDE is tracked under the audit action group DATABASE_CHANGE_GROUP, which you can find in SQL Server Audit Action Groups and Actions.

制限Restrictions

最初のデータベース暗号化、キー変更、またはデータベースの暗号化解除の実行中は、次の操作は許可されません。The following operations are disallowed during initial database encryption, key change, or database decryption:

  • データベース内のファイル グループからのファイルの削除Dropping a file from a filegroup in a database

  • データベースの削除Dropping a database

  • データベースのオフライン化Taking a database offline

  • データベースのデタッチDetaching a database

  • データベースまたはファイル グループの READ ONLY 状態への移行Transitioning a database or filegroup into a READ ONLY state

CREATE DATABASE ENCRYPTION KEY、ALTER DATABASE ENCRYPTION KEY、DROP DATABASE ENCRYPTION KEY、および ALTER DATABASE...SET ENCRYPTION の各ステートメントの実行中は、次の操作は許可されません。The following operations are disallowed during the CREATE DATABASE ENCRYPTION KEY, ALTER DATABASE ENCRYPTION KEY, DROP DATABASE ENCRYPTION KEY, and ALTER DATABASE...SET ENCRYPTION statements:

  • データベース内のファイル グループからのファイルの削除Dropping a file from a filegroup in a database

  • データベースの削除Dropping a database

  • データベースのオフライン化Taking a database offline

  • データベースのデタッチDetaching a database

  • データベースまたはファイル グループの READ ONLY 状態への移行Transitioning a database or filegroup into a READ ONLY state

  • ALTER DATABASE コマンドの使用Using an ALTER DATABASE command

  • データベースまたはデータベース ファイルのバックアップの開始Starting a database or database-file backup

  • データベースまたはデータベース ファイルの復元の開始Starting a database or database-file restore

  • スナップショットの作成Creating a snapshot

次の操作または状況が発生すると、CREATE DATABASE ENCRYPTION KEY、ALTER DATABASE ENCRYPTION KEY、DROP DATABASE ENCRYPTION KEY、および ALTER DATABASE...SET ENCRYPTION の各ステートメントを実行できません。The following operations or conditions prevent the CREATE DATABASE ENCRYPTION KEY, ALTER DATABASE ENCRYPTION KEY, DROP DATABASE ENCRYPTION KEY, and ALTER DATABASE...SET ENCRYPTION statements:

  • データベースが読み取り専用であるか、読み取り専用のファイル グループを含んでいる。A database is read-only or has read-only filegroups.

  • ALTER DATABASE コマンドが実行されている。An ALTER DATABASE command is running.

  • データ バックアップが実行されている。A data backup is running.

  • データベースがオフラインまたは復元中である。A database is in an offline or restore condition.

  • スナップショットが実行されている。A snapshot is in progress.

  • データベース メンテナンス タスクが実行されている。Database maintenance tasks are running.

データベース ファイルが作成されるときに、TDE が有効になっているとファイルの瞬時初期化を使用できません。When database files are created, instant file initialization is unavailable when TDE is enabled.

非対称キーでデータベース暗号化キーを暗号化するには、その非対称キーが拡張キー管理プロバイダーに存在している必要があります。To encrypt a database encryption key with an asymmetric key, the asymmetric key must be on an extensible key-management provider.

TDE スキャンTDE scan

データベースで TDE を有効にするには、SQL ServerSQL Server で暗号化スキャンを行う必要があります。To enable TDE on a database, SQL ServerSQL Server must do an encryption scan. スキャンによって、データ ファイルからバッファー プールに各ページが読み取られ、暗号化されたページがディスクに書き戻されます。The scan reads each page from the data files into the buffer pool and then writes the encrypted pages back out to disk.

暗号化スキャンをより詳細に制御できるように、SQL Server 2019 (15.x)SQL Server 2019 (15.x) には、suspend および resume 構文を含む、TDE スキャンが導入されています。To give you more control over the encryption scan, SQL Server 2019 (15.x)SQL Server 2019 (15.x) introduces TDE scan, which has a suspend and resume syntax. システムのワークロードが大きい場合や、ビジネス クリティカルな時間に、スキャンを一時停止し、後でスキャンを再開することができます。You can pause the scan while the workload on the system is heavy or during business-critical hours and then resume the scan later.

TDE 暗号化のスキャンを一時停止するには、次の構文を使用します。Use the following syntax to pause the TDE encryption scan:

ALTER DATABASE <db_name> SET ENCRYPTION SUSPEND;

同様に、TDE 暗号化のスキャンを再開するには、次の構文を使用します。Similarly, use the following syntax to resume the TDE encryption scan:

ALTER DATABASE <db_name> SET ENCRYPTION RESUME;

encryption_scan_state 列が、dm_database_encryption_keys 動的管理ビューに追加されました。The encryption_scan_state column has been added to the sys.dm_database_encryption_keys dynamic management view. 暗号化スキャンの現在の状態が表示されています。It shows the current state of the encryption scan. また、暗号化スキャンの状態が最後に変更された日時を含む、encryption_scan_modify_date という新しい列もあります。There's also a new column called encryption_scan_modify_date, which contains the date and time of the last encryption-scan state change.

暗号化スキャンが一時停止されている間に SQL ServerSQL Server インスタンスが再起動した場合、メッセージは起動時にエラー ログに記録されます。If the SQL ServerSQL Server instance restarts while its encryption scan is suspended, a message is logged in the error log on startup. このメッセージは、既存のスキャンが一時停止されていることを示します。The message indicates that an existing scan has been paused.

TDE とトランザクション ログTDE and transaction logs

データベースで TDE を使用できるようにすると、現在の仮想トランザクション ログの残りの部分が削除されます。Letting a database use TDE removes the remaining part of the current virtual transaction log. 削除時に、次のトランザクション ログが強制的に作成されます。The removal forces creation of the next transaction log. この動作により、データベースが暗号化対象として設定された後にログにクリア テキストが残らないことが保証されます。This behavior guarantees that no clear text is left in the logs after the database is set for encryption.

ログ ファイルの暗号化の状態を確認するには、この例のように、encryption_state ビューの sys.dm_database_encryption_keys 列を参照します。To find the status of log-file encryption, see the encryption_state column in the sys.dm_database_encryption_keys view, as in this example:

USE AdventureWorks2012;
GO
/* The value 3 represents an encrypted state
   on the database and transaction logs. */
SELECT *
FROM sys.dm_database_encryption_keys
WHERE encryption_state = 3;
GO

SQL ServerSQL Server のログ ファイル アーキテクチャの詳細については、「トランザクション ログ (SQL Server)」を参照してください。For more information about the SQL ServerSQL Server log-file architecture, see The Transaction Log (SQL Server).

データベース暗号化キーが変更される前に、以前のデータベース暗号化キーによって、トランザクション ログに書き込まれたすべてのデータが暗号化されます。Before a database encryption key changes, the previous database encryption key encrypts all data written to the transaction log.

データベース暗号化キーを 2 回変更する場合は、データベース暗号化キーを再度変更する前にログ バックアップを行う必要があります。If you change a database encryption key twice, you must do a log backup before you can change the database encryption key again.

TDE と tempdb システム データベースTDE and the tempdb system database

SQL ServerSQL Server インスタンス上の他のデータベースが TDE を使用して暗号化されている場合、tempdb システム データベースは暗号化されます。The tempdb system database is encrypted if any other database on the SQL ServerSQL Server instance is encrypted by using TDE. この暗号化が、同じ SQL ServerSQL Server インスタンス上にある暗号化されていないデータベースのパフォーマンスに影響する可能性があります。This encryption might have a performance effect for unencrypted databases on the same SQL ServerSQL Server instance. tempdb システム データベースの詳細については、「tempdb データベース」を参照してください。For more information about the tempdb system database, see tempdb Database.

TDE とレプリケーションTDE and replication

レプリケーションでは、TDE が有効になっているデータベースのデータが暗号化された形式で自動的にレプリケートされることはありません。Replication doesn't automatically replicate data from a TDE-enabled database in an encrypted form. ディストリビューションおよびサブスクライバー データベースを保護する場合は、TDE を個別に有効にします。Separately enable TDE if you want to protect distribution and subscriber databases.

スナップショット レプリケーションでは、暗号化されていない中間ファイル (BCP ファイルなど) にデータを格納できます。Snapshot replication can store data in unencrypted intermediate files like BCP files. トランザクションおよびマージ レプリケーションの初期データ ディストリビューションも可能です。The initial data distribution for transactional and merge replication can too. このようなレプリケーション時に、暗号化を有効にして通信チャネルを保護することができます。During such replication, you can enable encryption to protect the communication channel.

詳細については、「データベース エンジンへの暗号化接続の有効化 (SQL Server 構成マネージャー)」を参照してください。For more information, see Enable Encrypted Connections to the Database Engine (SQL Server Configuration Manager).

TDE と Always OnTDE and Always On

暗号化されたデータベースを Always On 可用性グループに追加できます。You can add an encrypted database to an Always On availability group.

可用性グループに含まれるデータベースを暗号化するには、プライマリ レプリカでデータベース暗号化キーを作成する前に、すべてのセカンダリ レプリカでマスター キーと証明書、または非対称キー (EKM) を作成します。To encrypt databases that are part of an availability group, create the master key and certificates, or asymmetric key (EKM) on all secondary replicas before creating the database encryption key on the primary replica.

証明書がデータベース暗号化キー (DEK) の保護に使用されている場合、プライマリ レプリカで作成された証明書をバックアップし、すべてのセカンダリ レプリカでファイルから証明書を作成してからプライマリ レプリカでデータベース暗号化キーを作成します。If a certificate is used to protect the database encryption key (DEK), back up the certificate created on the primary replica, and then create the certificate from a file on all secondary replicas before creating the database encryption key on the primary replica.

TDE と FILESTREAM データTDE and FILESTREAM data

TDE を有効にした場合でも、FILESTREAM データは暗号化されません。FILESTREAM data isn't encrypted even when you enable TDE.

TDE の削除Remove TDE

ALTER DATABASE ステートメントを使用してデータベースから暗号化を削除します。Remove encryption from the database by using the ALTER DATABASE statement.

ALTER DATABASE <db_name> SET ENCRYPTION OFF;

データベースの状態を表示するには、sys.dm_database_encryption_keys 動的管理ビューを使います。To view the state of the database, use the sys.dm_database_encryption_keys dynamic management view.

暗号化の解除が完了するまで待機し、その後、DROP DATABASE ENCRYPTION KEY でデータベース暗号化キーを削除します。Wait for decryption to finish before removing the database encryption key by using DROP DATABASE ENCRYPTION KEY.

重要

TDE に使用されているマスター キーと証明書を安全な場所にバックアップします。Back up the master key and certificate that are used for TDE to a safe location. データベースが TDE で暗号化されたときに取得されたバックアップを復元するには、マスター キーと証明書が必要です。The master key and certificate are required to restore backups that were taken when the database was encrypted with TDE. データベース暗号化キーを削除したら、ログをバックアップし、それから復号されたデータベースの完全なバックアップを新しく作成します。After you remove the database encryption key, take a log backup followed by a fresh full backup of the decrypted database.

TDE とバッファー プール拡張TDE and buffer pool extension

TDE を使用してデータベースを暗号化する場合、バッファー プール拡張機能 (BPE) に関連するファイルは暗号化されません。When you encrypt a database using TDE, files related to buffer pool extension (BPE) aren't encrypted. これらのファイルについては、ファイル システム レベルで BitLocker や EFS などの暗号化ツールを使用します。For those files, use encryption tools like BitLocker or EFS at the file-system level.

TDE とインメモリ OLTPTDE and In-Memory OLTP

インメモリ OLTP オブジェクトを含むデータベースで、TDE を有効にすることができます。You can enable TDE on a database that has In-Memory OLTP objects. SQL Server 2016 (13.x)SQL Server 2016 (13.x)Azure SQL データベースAzure SQL Database では、TDE を有効した場合、インメモリ OLTP ログ レコードとデータが暗号化されます。In SQL Server 2016 (13.x)SQL Server 2016 (13.x) and Azure SQL データベースAzure SQL Database, In-Memory OLTP log records and data are encrypted if you enable TDE. SQL Server 2014 (12.x)SQL Server 2014 (12.x) では、TDE を有効した場合、インメモリ OLTP ログ レコードは暗号化されますが、MEMORY_OPTIMIZED_DATA ファイル グループのファイルは暗号化されません。In SQL Server 2014 (12.x)SQL Server 2014 (12.x), In-Memory OLTP log records are encrypted if you enable TDE, but files in the MEMORY_OPTIMIZED_DATA filegroup are unencrypted.

別の SQL Server への TDE で保護されたデータベースの移動Move a TDE Protected Database to Another SQL Server
EKM の使用による TDE の有効化Enable TDE on SQL Server Using EKM
Azure Key Vault を使用する拡張キー管理 (SQL Server)Extensible Key Management Using Azure Key Vault (SQL Server)

Azure SQL Database での Transparent Data EncryptionTransparent Data Encryption with Azure SQL Database
Azure Synapse Analytics での Transparent Data Encryption (TDE) の概要Get started with Transparent Data Encryption (TDE) in Azure Synapse Analytics
SQL Server の暗号化SQL Server Encryption
SQL Server とデータベースの暗号化キー (データベース エンジン)SQL Server and Database Encryption Keys (Database Engine)

関連項目See also

SQL Server データベース エンジンと Azure SQL Database のセキュリティ センターSecurity Center for SQL Server Database Engine and Azure SQL Database
FILESTREAM (SQL Server)FILESTREAM (SQL Server)