Поделиться через


OPEN MASTER KEY (Transact-SQL)

Применимо к:SQL ServerБаза данных SQL AzureУправляемый экземпляр SQL AzureAzure Synapse AnalyticsСистема платформы аналитики (PDW)База данных SQL в предварительной версии Microsoft Fabric

Открывает главный ключ текущей базы данных.

Соглашения о синтаксисе Transact-SQL

Syntax

OPEN MASTER KEY DECRYPTION BY PASSWORD = 'password'   

Note

Этот синтаксис не поддерживается бессерверным пулом SQL в Azure Synapse Analytics.

Arguments

'password'
Пароль, которым был зашифрован главный ключ базы данных.

Remarks

Если главный ключ базы данных был зашифрован с помощью главного ключа службы, то он автоматически будет открываться при необходимости расшифровать или зашифровать ключ. В этом случае инструкцию OPEN MASTER KEY использовать не нужно.

При первом присоединении базы данных к новому экземпляру SQL Server или ее восстановлении копия главного ключа базы данных (зашифрованная главным ключом службы) еще не хранится на сервере. Необходимо расшифровать главный ключ базы данных с помощью инструкции OPEN MASTER KEY. Как только главный ключ базы данных будет расшифрован, появится возможность разрешить автоматическую расшифровку в будущем с помощью инструкции ALTER MASTER KEY REGENERATE, чтобы оставить на сервере копию главного ключа базы данных, зашифрованного с помощью главного ключа службы. После обновления базы данных с переходом от более ранней версии главный ключ базы данных должен быть создан повторно для использования нового алгоритма шифрования AES. Дополнительные сведения о повторном создании главного ключа базы данных см. в статье ALTER MASTER KEY (Transact-SQL). Время, необходимое для повторного создания главного ключа базы данных с обновлением до алгоритма шифрования AES, зависит от числа объектов, защищаемых главным ключом базы данных. Повторное создание главного ключа базы данных с обновлением до алгоритма шифрования AES необходимо произвести только один раз. Это никак не повлияет на последующие операции повторного создания, выполняемые в соответствии со стратегией смены ключей.

При помощи инструкции ALTER MASTER KEY с параметром DROP ENCRYPTION BY SERVICE MASTER KEY можно запретить автоматическое управление главным ключом определенной базы данных. После этого необходимо явно открыть главный ключ базы данных с помощью пароля.

При откате транзакции, в которой главный ключ базы данных был явно открыт, этот ключ останется открытым.

Permissions

Требует разрешения CONTROL для базы данных.

Examples

В приведенном далее примере открывается главный ключ базы данных AdventureWorks2022, зашифрованный с помощью пароля.

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

Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)

В приведенном далее примере открывается база данных master, зашифрованная с помощью пароля.

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

See Also