Share via


OPEN MASTER KEY (Transact-SQL)

現在のデータベースのデータベース マスター キーを開きます。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

OPEN MASTER KEY DECRYPTION BY PASSWORD = 'password' 

引数

  • 'password'
    データベース マスター キーを暗号化するときに使用するパスワードを指定します。

説明

データベース マスター キーがサービス マスター キーで暗号化された場合、データベース マスター キーは、暗号化解除または暗号化の必要が生じたときに、自動的に開かれます。この場合、OPEN MASTER KEY ステートメントを使用する必要はありません。

データベースが最初に SQL Server の新しいインスタンスにアタッチされるとき、データベース マスター キー (サービス マスター キーにより暗号化されたもの) のコピーはまだサーバーに格納されていません。OPEN MASTER KEY を使用して、データベース マスター キーを暗号化解除する必要があります。いったんデータベース マスター キーが暗号化解除されると、ALTER MASTER KEY ステートメントを使用して、サービス マスター キーで暗号化されたデータベース マスター キーのコピーをサーバーに提供することにより、将来、自動的に暗号化解除することも可能となります。このオプションの詳細については、「ALTER MASTER KEY (Transact-SQL)」を参照してください。

DROP ENCRYPTION BY SERVICE MASTER KEY オプションと共に ALTER MASTER KEY ステートメントを使用することにより、特定のデータベースのデータベース マスター キーを自動キー管理から除外することができます。その後は、パスワードにより明示的にデータベース マスター キーを開く必要があります。

データベース マスター キーが明示的に開かれるトランザクションがロールバックされると、キーは開いたままとなります。

権限

データベースに対する CONTROL 権限が必要です。

次の例では、パスワードにより暗号化された AdventureWorks2008R2 データベースのデータベース マスター キーを開きます。

USE AdventureWorks2008R2;
OPEN MASTER KEY DECRYPTION BY PASSWORD = '43987hkhj4325tsku7';
GO