Always Encrypted ウィザードを使用して列暗号化を構成するConfigure column encryption using Always Encrypted Wizard

適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database

Always Encrypted ウィザードは、選択したデータベースの列に対して目的の Always Encrypted の構成を設定することができる強力なツールです。The Always Encrypted Wizard is a powerful tool that allows you to set the desired Always Encrypted configuration for selected database columns. 現在の構成と目的の構成に応じて、ウィザードでは、列を暗号化したり、列の暗号化を解除したり (解読)、列を再暗号化 (たとえば、新しい列暗号化キーの使用や、列に構成された現在のものとは種類が異なる暗号化の使用) したりできます。Depending on the current configuration and the desired target configuration, the wizard can encrypt a column, decrypt it (remove encryption), or re-encrypt it (for example, using a new column encryption key or an encryption type that is different from the current type, configured for the column). ウィザードの 1 回の実行で、複数の列を構成することができます。Multiple columns can be configured in a single run of the wizard.

ウィザードを使うと、既存の列暗号化キーを使用して列を暗号化したり、新しい列暗号化キーまたは新しい列暗号化キーと新しい列マスター キーの両方を生成したりすることもできます。The wizard allows you to encrypt columns with existing column encryption keys, or you can choose to generate a new column encryption key or both a new column encryption key and a new column master key.

ウィザードにより、データはデータベースの外に移動されて、SSMS プロセス内で暗号化操作を実行されます。The wizard works by moving data out of the database and performing cryptographic operations within the SSMS process. このウィザードでは、データベース内で必要な暗号化構成を使用して新しい 1 つまたは複数のテーブルが作成され、元のテーブルからすべてのデータが読み込まれ、要求された暗号化操作が実行され、データを新しいテーブルにアップロードされた後、元のテーブルが新しいテーブルに入れ替えられます。The wizard creates a new table (or tables) with the desired encryption configuration in the database, loads all data from the original tables, performs the requested cryptographic operations, uploads the data to the new table(s), and then swaps the original table(s) with the new table(s).

注意

暗号化操作の実行には時間がかかる場合があります。Running cryptographic operations can take a long time. その間、データベースでトランザクションを書き込むことはできません。During that time, your database is not available to write transactions. 大きなテーブルに対する暗号化操作には、PowerShell が推奨されるツールです。PowerShell is a recommended tool for cryptographic operations on larger tables. PowerShell での Always Encrypted を使用した列暗号化の構成」をご覧ください。See Configure column encryption using Always Encrypted with PowerShell.

注意

SQL Server 2019 (15.x)SQL Server 2019 (15.x) を使用していて、お使いの SQL Server インスタンスがセキュリティで保護されたエンクレーブで構成されている場合は、データベースからデータを移動せずに、暗号化操作をインプレースで実行できます。If you are using SQL Server 2019 (15.x)SQL Server 2019 (15.x) and your SQL Server instance is configured with a secure enclave, you can run cryptographic operations in-place, without moving data out of the database. セキュリティで保護されたエンクレーブが設定された Always Encrypted を使用して列の暗号化をインプレースで構成する」を参照してください。See Configure column encryption in-place using Always Encrypted with secure enclaves. ウィザードでは、インプレース暗号化がサポートされていないことに注意してください。Note that the wizard does not support in-place encryption.

PowerShell を使用することをお勧めしますUse PowerShell is a recommended

アクセス許可Permissions

ウィザードを使って暗号化操作を実行するには、VIEW ANY COLUMN MASTER KEY DEFINITION および VIEW ANY COLUMN ENCRYPTION KEY DEFINITION のアクセス許可が必要です。To perform cryptographic operations using the wizard, you must have the VIEW ANY COLUMN MASTER KEY DEFINITION and VIEW ANY COLUMN ENCRYPTION KEY DEFINITION permissions. また、列マスター キーを作成し、それにアクセスして使用するためのキー ストアのアクセス許可も必要です。You also need key store permissions to create, access and use your column master key. キー ストアのアクセス許可の詳細については、「Always Encrypted の列マスター キーを作成して保存する」に移動し、キー ストアに関連するセクションを見つけてください。For detailed information on key store permissions, go to Create and store column master keys for Always Encrypted and find a section relevant for your key store.

Always Encrypted ウィザードを開くOpen the Always Encrypted Wizard

3 つの異なるレベルでウィザードを起動できます。You can launch the wizard at three different levels:

  • データベース レベル - 異なるテーブルに存在する複数の列を暗号化する場合。At a database level - if you want to encrypt multiple columns located in different tables.
  • テーブル レベル - 同じテーブルに存在する複数の列を暗号化する場合。At a table level - if you want to encrypt multiple columns located in the same table.
  • 列レベル - 1 つの特定の列を暗号化する場合。At a column level - if you want to encrypt one specific column.
  1. SQL ServerSQL Server のオブジェクト エクスプローラー コンポーネントで SQL Server Management StudioSQL Server Management Studioに接続します。Connect to your SQL ServerSQL Server with the Object Explorer component of SQL Server Management StudioSQL Server Management Studio.

  2. 暗号化を行います。To encrypt:

    1. 1 つのデータベースの異なるテーブルに存在する複数の列を暗号化するには、データベースを右クリックし、 [タスク] をポイントして、 [列の暗号化] を選択します。Multiple columns located in different table in a database, right-click your database, point to Tasks, and then select Encrypt Columns.
    2. 同じテーブルに存在する複数の列を暗号化するには、テーブルに移動して右クリックし、 [列の暗号化] を選択します。Multiple columns located in the same table, navigate to the table, right-click on it, and then select Encrypt Columns.
    3. 個々の列を暗号化するには、列に移動して右クリックし、 [列の暗号化] を選択します。An individual column, navigate to the column, right-click on it, and then select Encrypt Columns.

列の選択ページColumn Selection Page

このページでは、暗号化、再暗号化、または暗号化解除する列を選択し、選択した列に対するターゲットの暗号化構成を定義します。In this page, you select columns you want to encrypt, re-encrypt, or decrypt, and you define the target encryption configuration for the selected columns.

プレーンテキスト列 (暗号化されていない列) を暗号化するには、列の暗号化の種類 ( [決定論的] または [ランダム化] ) と暗号化キーを選択します。To encrypt a plaintext column (a column that isn't encrypted), select an encryption type (Deterministic or Randomized) and an encryption key for the column.

既に暗号化されている列の暗号化の種類を変更したり、列暗号化キーをローテーション (変更) したりするには、目的の暗号化の種類とキーを選択します。To change an encryption type or to rotate (change) a column encryption key for an already encrypted column, select the desired encryption type and the key.

ウィザードで新しい列暗号化キーを使用して 1 つまたは複数の列を暗号化または再暗号化する場合は、名前に (New) が含まれるキーを選択します。If you want the wizard to encrypt or re-encrypt one or more columns using a new column encryption key, pick a key containing (New) in its name. ウィザードによってキーが生成されます。The wizard will generate the key.

現在暗号化されている列の暗号化を解除するには、暗号化の種類として [プレーン テキスト] を選択します。To decrypt a column that is currently encrypted, select Plaintext for the encryption type.

注意

ウィザードでは、テンポラル テーブルとインメモリ テーブルに対する暗号化操作はサポートされていません。The wizard does not support cryptographic operations on temporal and in-memory tables. Transact-SQL を使って空のテンポラル テーブルまたはインメモリ テーブルを作成し、アプリケーションを使ってデータを挿入できます。You can create empty temporal or in-memory tables using Transact-SQL and insert data using your application.

マスター キーの構成ページMaster Key Configuration Page

前のページでいずれかの列に対して自動生成された列暗号化キーを選択した場合、このページでは、既存の列マスター キーを選択するか、列暗号化キーを暗号化する新しい列マスター キーを構成する必要があります。If you have selected an autogenerated column encryption key for any column on the previous page, in this page you need to either select an existing column master key or configure a new column master key that will encrypt the column encryption key.

新しい列マスター キーを構成するときは、Windows 証明書ストアまたは Azure Key Vault で既存のキーを選択し、ウィザードを使ってデータベース内のキーに対するメタデータ オブジェクトだけを作成するか、キーとデータベース内のキーを記述するメタデータ オブジェクトの両方を生成することができます。When configuring a new column master key, you can either pick an existing key in Windows Certificate Store or in Azure Key Vault and have the wizard to create just a metadata object for the key in the database, or you can choose to generate both the key and the metadata object describing the key in the database.

列マスター キーを作成し、Windows 証明書ストア、Azure Key Vault、または他のキー ストアに格納する方法について詳しくは、「Always Encrypted の列マスター キーを作成して保存する」をご覧ください。For more information about creating and storing column master keys in Windows Certificate Store, Azure Key Vault or other key stores, see Create and store column master keys for Always Encrypted.

ヒント

このウィザードでは、Windows 証明書ストアおよび Azure Key Vault のキーだけを参照および作成できます。The wizard allows you to browse and create keys only in Windows Certificate Store and Azure Key Vault. また、新しいキーとキーを記述するデータベース メタデータ オブジェクトの両方の名前が自動生成されます。It also auto-generates the names of both the new keys and the database metadata objects describing the keys. キーのプロビジョニング方法をより詳細に制御する必要がある場合 (および列マスター キーを格納したキー ストアの選択肢がもっと必要である場合) は、 [新しい列マスター キー] ダイアログと [新しい列の暗号化キー] ダイアログを使用して最初にキーを作成した後、ウィザードを実行して作成したキーを選択します。If you need more control for how your keys are provisioned (and more choices for a key store containing your column master key), you can use the New Column Master Key and New Column Encryption Key dialogs to create the keys first, and then run the wizard and pick the keys you have created. [新しい列マスター キー] ダイアログを使用して列マスター キーをプロビジョニングする」および「[新しい列の暗号化キー] ダイアログを使用して列の暗号化キーをプロビジョニングする」をご覧ください。See Provision Column Master Keys with the New Column Master Key Dialog and Provision Column Encryption Keys with the New Column Encryption Key Dialog.

次の手順Next Steps

参照See Also