sys.dm_database_encryption_keys(Transact-SQL)
적용 대상: Microsoft Fabric의 SQL ServerAzure SQL Database Azure SQL Managed Instance SQL 데이터베이스
데이터베이스의 암호화 상태 및 관련 데이터베이스 암호화 키에 대한 정보를 반환합니다. 데이터 암호화에 대한 자세한 내용은 TDE(투명한 데이터 암호화)를 참조하세요.
열 이름 | 데이터 형식 | 설명 |
---|---|---|
database_id | int | 데이터베이스의 ID입니다. |
encryption_state | int | 데이터베이스가 암호화되었는지 여부를 나타냅니다. 0 = 데이터베이스 암호화 키가 없고 암호화되지 않음 1 = 암호화되지 않음 2 = 암호화 진행 중 3 = 암호화됨 4 = 진행 중인 키 변경 5 = 진행 중인 암호 해독 6 = 보호 변경 진행 중(데이터베이스 암호화 키를 암호화하는 인증서 또는 비대칭 키가 변경되고 있습니다.) |
create_date | 날짜/시간 | 암호화 키가 만들어진 날짜(UTC)를 표시합니다. |
regenerate_date | 날짜/시간 | 암호화 키가 다시 생성된 날짜(UTC)를 표시합니다. |
modify_date | 날짜/시간 | 암호화 키가 수정된 날짜(UTC)를 표시합니다. |
set_date | 날짜/시간 | 데이터베이스에 암호화 키가 적용된 날짜(UTC)를 표시합니다. |
opened_date | 날짜/시간 | 데이터베이스 키가 마지막으로 열린 시점(UTC)을 표시합니다. |
key_algorithm | nvarchar(32) | 키에 사용되는 알고리즘을 표시합니다. |
key_length | int | 키의 길이를 표시합니다. |
encryptor_thumbprint | varbinary(20) | 암호화기의 지문을 표시합니다. |
encryptor_type | nvarchar(32) | 적용 대상: SQL Server (SQL Server 2012(11.x) ~ 현재 버전). 암호화기를 설명합니다. |
percent_complete | real | 데이터베이스 암호화 상태 변경의 완료 비율입니다. 상태 변경이 없으면 0이 됩니다. |
encryption_state_desc | nvarchar(32) | 적용 대상: SQL Server 2019 (15.x) 이상 데이터베이스가 암호화되었는지 여부를 나타내는 문자열입니다. NONE 암호화 되지 않은 암호화 DECRYPTION_IN_PROGRESS ENCRYPTION_IN_PROGRESS KEY_CHANGE_IN_PROGRESS PROTECTION_CHANGE_IN_PROGRESS |
encryption_scan_state | int | 적용 대상: SQL Server 2019 (15.x) 이상 암호화 검사의 현재 상태를 나타냅니다. 0 = 검사가 시작되지 않았으므로 TDE를 사용할 수 없습니다. 1 = 검사가 진행 중입니다. 2 = 검사가 진행 중이지만 일시 중단되었으므로 사용자가 다시 시작할 수 있습니다. 3 = 어떤 이유로 인해 검사가 중단되었습니다. 수동 개입이 필요합니다. 자세한 내용은 Microsoft 지원 문의하세요. 4 = 검사가 성공적으로 완료되고 TDE가 활성화되고 암호화가 완료되었습니다. |
encryption_scan_state_desc | nvarchar(32) | 적용 대상: SQL Server 2019 (15.x) 이상 암호화 검사의 현재 상태를 나타내는 문자열입니다. NONE RUNNING SUSPENDED ABORTED 완료 |
encryption_scan_modify_date | 날짜/시간 | 적용 대상: SQL Server 2019 (15.x) 이상 암호화 검사 상태가 마지막으로 수정된 날짜(UTC)를 표시합니다. |
사용 권한
SQL Server 및 SQL Managed Instance에서는 VIEW SERVER STATE
권한이 필요합니다.
SQL Database Basic, S0 및 S1 서비스 목표 또는 탄력적 풀 내의 데이터베이스에 대해서는 서버 관리자 계정, Microsoft Entra 관리자 계정 또는 ##MS_ServerStateReader##
서버 역할의 멤버 자격이 필요합니다. 다른 모든 SQL Database 서비스 목표에 대해서는 데이터베이스에 대한 VIEW DATABASE STATE
권한 또는 ##MS_ServerStateReader##
서버 역할의 멤버 자격이 필요합니다.
Fabric SQL 데이터베이스에서 이 DMV를 쿼리하려면 데이터베이스에서 VIEW DATABASE STATE를 사용자에게 부여해야 합니다. 또는 Fabric 작업 영역에서 이 DMV를 쿼리할 수 있는 역할의 멤버입니다.
SQL Server 2022 이상에 대한 사용 권한
서버에 대한 VIEW SERVER SECURITY STATE 권한이 필요합니다.
참고 항목
보안 관련 동적 관리 뷰 및 함수(Transact-SQL)
TDE(투명한 데이터 암호화)
SQL Server 암호화
SQL Server 및 데이터베이스 암호화 키(데이터베이스 엔진)
암호화 계층
ALTER DATABASE SET 옵션(TRANSACT-SQL)
CREATE DATABASE ENCRYPTION KEY(Transact-SQL)
ALTER DATABASE ENCRYPTION KEY(Transact-SQL)
DROP DATABASE ENCRYPTION KEY(Transact-SQL)