ALTER DATABASE ENCRYPTION KEY(Transact-SQL)

데이터베이스를 명시적으로 암호화하는 데 사용되는 암호화 키와 인증서를 변경합니다. TDE(Transparent Data Encryption)에 대한 자세한 내용은 투명한 데이터 암호화를 참조하십시오.

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

구문

ALTER DATABASE ENCRYPTION KEY
      REGENERATE WITH ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY }
   |
   ENCRYPTION BY SERVER 
    {
        CERTIFICATE Encryptor_Name |
        ASYMMETRIC KEY Encryptor_Name
    }
[ ; ]

인수

  • REGENERATE WITH ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY }
    암호화 키에 사용되는 암호화 알고리즘을 지정합니다.

  • ENCRYPTION BY SERVER CERTIFICATE Encryptor_Name
    데이터베이스 암호화 키를 암호화하는 데 사용되는 인증서의 이름을 지정합니다.

  • ENCRYPTION BY SERVER ASYMMETRIC KEY Encryptor_Name
    데이터베이스 암호화 키를 암호화하는 데 사용되는 비대칭 키의 이름을 지정합니다.

주의

데이터베이스 암호화 키를 암호화하는 데 사용되는 인증서 또는 비대칭 키는 master 시스템 데이터베이스에 있어야 합니다.

Dbo(데이터베이스 소유자)가 변경될 경우 데이터베이스 암호화 키를 다시 생성하지 않아도 됩니다.

데이터베이스 암호화 키를 두 번 수정한 후 다시 데이터베이스 암호화 키를 수정하려면 먼저 로그 백업을 수행해야 합니다.

사용 권한

데이터베이스에 대한 CONTROL 권한과 데이터베이스 암호화 키를 암호화하는 데 사용되는 인증서 또는 비대칭 키에 대한 VIEW DEFINITION 권한이 필요합니다.

다음 예제에서는 AES_256 알고리즘을 사용하여 데이터베이스 암호화 키를 변경합니다.

USE AdventureWorks2012;
GO
ALTER DATABASE ENCRYPTION KEY
REGENERATE WITH ALGORITHM = AES_256;
GO

참고 항목

참조

ALTER DATABASE SET 옵션(Transact-SQL)

CREATE DATABASE ENCRYPTION KEY(Transact-SQL)

DROP DATABASE ENCRYPTION KEY(Transact-SQL)

sys.dm_database_encryption_keys(Transact-SQL)

개념

투명한 데이터 암호화

SQL Server 암호화

SQL Server 및 데이터베이스 암호화 키(데이터베이스 엔진)

암호화 계층