OPEN MASTER KEY(Transact-SQL)

현재 데이터베이스의 데이터베이스 마스터 키를 엽니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

구문

OPEN MASTER KEY DECRYPTION BY PASSWORD = 'password' 

인수

  • 'password'
    데이터베이스 마스터 키를 암호화할 때 사용한 암호입니다.

주의

서비스 마스터 키를 사용하여 암호화한 데이터베이스 마스터 키의 경우 해독 또는 암호화를 위해 필요할 때 자동으로 열립니다. 이 경우에는 OPEN MASTER KEY 문을 사용할 필요가 없습니다.

데이터베이스가 새 SQL Server 인스턴스로 처음으로 연결되거나 복원될 때 데이터베이스 마스터 키(서비스 마스터 키로 암호화됨)의 복사본은 서버에 아직 저장되지 않은 상태입니다. DMK(데이터베이스 마스터 키)를 해독하려면 OPEN MASTER KEY 문을 사용해야 합니다. DMK를 해독한 후에는 ALTER MASTER KEY REGENERATE 문을 사용하여 자동 해독되도록 옵션을 설정하여 SMK(서비스 마스터 키)로 암호화된 DMK의 복사본을 서버에 제공할 수 있습니다. 데이터베이스가 이전 버전에서 업그레이드되지 않은 경우에는 DMK를 다시 생성해야 최신 AES 알고리즘을 사용할 수 있습니다. DMK를 다시 생성하는 방법은 ALTER MASTER KEY(Transact-SQL)를 참조하십시오. AES로 업그레이드하기 위해 DMK 키를 다시 생성하는 데 소요되는 시간은 DMK에서 보호하는 개체 수에 따라 달라집니다. AES로 업그레이드하기 위해 DMK 키를 다시 생성하는 작업은 한 번만 필요하며 키 회전 전략의 일부로 이후에 수행하는 다시 생성 작업에 영향을 주지 않습니다.

ALTER MASTER KEY 문에 DROP ENCRYPTION BY SERVICE MASTER KEY 옵션을 사용하면 특정 데이터베이스의 데이터베이스 마스터 키를 자동 키 관리에서 제외할 수 있습니다. 이후부터 해당 데이터베이스 마스터 키는 암호를 사용하여 명시적으로 열어야 합니다.

데이터베이스 마스터 키를 명시적으로 연 트랜잭션이 롤백되면 이 키는 열린 상태로 남게 됩니다.

사용 권한

데이터베이스에 대한 CONTROL 권한이 필요합니다.

다음 예에서는 암호로 암호화된 AdventureWorks2012 데이터베이스의 데이터베이스 마스터 키를 엽니다.

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

참고 항목

참조

CREATE MASTER KEY(Transact-SQL)

CLOSE MASTER KEY(Transact-SQL)

BACKUP MASTER KEY(Transact-SQL)

RESTORE MASTER KEY(Transact-SQL)

ALTER MASTER KEY(Transact-SQL)

DROP MASTER KEY(Transact-SQL)

개념

암호화 계층