Udostępnij za pomocą


OTWÓRZ KLUCZ GŁÓWNY (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Database w Microsoft Fabric

Otwiera klucz główny bazy danych bieżącej bazy danych.

Transact-SQL konwencje składni

Syntax

OPEN MASTER KEY DECRYPTION BY PASSWORD = 'password'   

Note

Ta składnia nie jest obsługiwana przez bezserwerową pulę SQL w usłudze Azure Synapse Analytics.

Arguments

'password'
Hasło, za pomocą którego klucz główny bazy danych został zaszyfrowany.

Remarks

Jeśli klucz główny bazy danych został zaszyfrowany przy użyciu klucza głównego usługi, zostanie on automatycznie otwarty, gdy będzie potrzebny do odszyfrowywania lub szyfrowania. W takim przypadku nie jest konieczne użycie instrukcji OPEN MASTER KEY .

Gdy baza danych jest najpierw dołączona lub przywrócona do nowego wystąpienia programu SQL Server, kopia klucza głównego bazy danych (zaszyfrowana za pomocą klucza głównego usługi) nie jest jeszcze przechowywana na serwerze. Należy użyć instrukcji OPEN MASTER KEY , aby odszyfrować klucz główny bazy danych (DMK). Po odszyfrowaniu klucza DMK można włączyć automatyczne odszyfrowywanie w przyszłości przy użyciu instrukcji ALTER MASTER KEY REGENERATE w celu aprowizacji serwera z kopią klucza DMK zaszyfrowanego przy użyciu klucza głównego usługi (SMK). Gdy baza danych została uaktualniona z wcześniejszej wersji, klucz DMK powinien zostać wygenerowany ponownie, aby użyć nowszego algorytmu AES. Aby uzyskać więcej informacji na temat regeneracji DMK, zobacz ALTER MASTER KEY (Transact-SQL). Czas wymagany do ponownego wygenerowania klucza DMK do uaktualnienia do usługi AES zależy od liczby obiektów chronionych przez klucz DMK. Ponowne generowanie klucza DMK w celu uaktualnienia do AES jest konieczne tylko raz i nie ma wpływu na przyszłe ponowne generowanie w ramach strategii rotacji kluczy.

Klucz główny bazy danych określonej bazy danych można wykluczyć z automatycznego zarządzania kluczami przy użyciu instrukcji ALTER MASTER KEY z opcją DROP ENCRYPTION BY SERVICE MASTER KEY. Następnie należy jawnie otworzyć klucz główny bazy danych z hasłem.

Jeśli transakcja, w której klucz główny bazy danych został jawnie otwarty, zostanie wycofany, klucz pozostanie otwarty.

Permissions

Wymaga uprawnień CONTROL w bazie danych.

Examples

W poniższym przykładzie zostanie otwarty klucz AdventureWorks2025 główny bazy danych bazy danych, który został zaszyfrowany hasłem.

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

Przykłady: Azure Synapse Analytics and Analytics Platform System (PDW)

Poniższy przykład otwiera wzorzec bazy danych, który został zaszyfrowany przy użyciu hasła.

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

Zobacz też