상시 암호화 마법사Always Encrypted Wizard

이 항목은 다음에 적용됩니다. 예SQL Server(2016부터)예Azure SQL Database아니요Azure SQL Data Warehouse아니요병렬 데이터 웨어하우스 THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

상시 암호화 마법사 를 사용하여 SQL Server 데이터베이스에 저장된 중요 데이터를 보호할 수 있습니다.Use the Always Encrypted Wizard to help protect sensitive data stored in a SQL Server database. 상시 암호화를 사용하면 클라이언트가 클라이언트 응용 프로그램의 중요한 데이터를 암호화하고 암호화 키를 SQL Server에 표시하지 않을 수 있습니다.Always Encrypted allows clients to encrypt sensitive data inside client applications and never reveal the encryption keys to SQL Server. 따라서 상시 암호화는 데이터를 소유하고 볼 수 있는 사람과 데이터를 관리하지만 액세스 권한이 없어야 하는 사람을 분리합니다.As a result, Always Encrypted provides a separation between those who own the data (and can view it) and those who manage the data (but should have no access). 기능에 대한 자세한 내용은 상시 암호화(데이터베이스 엔진)를 참조하세요.For a full description of the feature, see Always Encrypted (Database Engine).

마법사를 사용하여 상시 암호화를 구성하고 클라이언트 응용 프로그램에서 사용하는 방법을 보여 주는 종합 연습은 SQL 데이터베이스 자습서: 상시 암호화로 중요한 데이터 보호를 참조하세요.For an end-to-end walkthrough that shows how to configure Always Encrypted with the wizard and use it in a client application, see SQL Database tutorial: Protect sensitive data with Always Encrypted.

마법사 사용이 포함된 비디오는 상시 암호화를 사용하여 중요 데이터 보안 유지를 참조하세요.For a video that includes using the wizard, see Keeping Sensitive Data Secure with Always Encrypted. 그리고 SQL ServerSQL Server 보안 팀 블로그 SSMS 암호화 마법사 - 간단한 몇 단계로 상시 암호화 설정을 참조하세요.Also, see the SQL ServerSQL Server Security Team blog SSMS Encryption Wizard - Enabling Always Encrypted in a Few Easy Steps.

사용 권한: 이 마법사를 사용하여 암호화된 열을 쿼리하고 키를 선택하려면 VIEW ANY COLUMN MASTER KEY DEFINITIONVIEW ANY COLUMN ENCRYPTION KEY DEFINITION 사용 권한이 있어야 합니다.Permissions: To query encrypted columns and to select keys using this wizard you must have the VIEW ANY COLUMN MASTER KEY DEFINITION and VIEW ANY COLUMN ENCRYPTION KEY DEFINITION permissions. 새 키를 만들려면 ALTER ANY COLUMN MASTER KEYALTER ANY COLUMN ENCRYPTION KEY 사용 권한이 있어야 합니다.To create new keys, you must also have the ALTER ANY COLUMN MASTER KEY and ALTER ANY COLUMN ENCRYPTION KEY permissions.

상시 암호화 마법사를 열려면To Open the Always Encrypted Wizard

  1. SQL ServerSQL Server 의 개체 탐색기 구성 요소를 사용하여 SQL Server Management StudioSQL Server Management Studio에 연결합니다.Connect to your SQL ServerSQL Server with the Object Explorer component of SQL Server Management StudioSQL Server Management Studio.

  2. 데이터베이스를 마우스 오른쪽 단추로 클릭하고 태스크를 가리킨 다음 열 암호화를 클릭합니다.Right-click your database, point to Tasks, and then click Encrypt Columns.

열 선택 페이지Column Selection Page

테이블과 열을 찾은 다음 선택한 열의 암호화 유형(결정적 또는 임의)과 암호화 키를 선택합니다.Locate a table and column, and then select an encryption type (deterministic or randomized) and an encryption key for selected columns. 현재 암호화된 열의 암호화를 해제하려면 일반 텍스트를 선택합니다.To decrypt an column that is currently encrypted, select Plaintext. 열 암호화 키를 회전하려면 다른 암호화 키를 선택합니다. 그러면 마법사가 열의 암호화를 해제하고 새 키로 열을 다시 암호화합니다.To rotate a column encryption key, select different encryption key and the wizard will decrypt the column and re-encrypt the column with the new key. ( SQL ServerSQL Server 에서 메모리 내 임시 테이블을 암호화할 수 있지만 이 마법사로 구성할 수는 없습니다.)(Encrypting temporal and In-Memory tables is supported by SQL ServerSQL Server but cannot be configured by this wizard.)

마스터 키 구성 페이지Master Key Configuration Page

Windows 인증서 저장소 또는 Azure 키 자격 증명 모음에 새 열 마스터 키를 만듭니다.Create a new column master key in the Windows Certificate Store or Azure Key Vault. 자세한 내용은 키 저장소 아래 링크를 참조하세요.For more information, see the links below under Key Storage.

열 선택 페이지에서 자동 생성되는 열 암호화 키를 선택한 경우 생성된 열 암호화 키를 암호화할 때 적용할 열 마스터 키를 구성해야 합니다.If you chose an auto-generated column encryption key in the Column Selection page, you must configure a column master key that the generated column encryption key will be encrypted with. 데이터베이스에 이미 열 마스터 키를 정의한 경우 해당 키를 선택할 수 있습니다.If you already have a column master key defined in your database, you can select it. (기존 열 마스터 키를 사용하려면 사용자가 키에 대한 액세스 권한이 있어야 합니다.) 또는 선택한 열 저장소(Windows 인증서 저장소 또는 Azure 키 자격 증명 모음)에 열 마스터 키를 만들고 데이터베이스에서 키를 정의할 수 있습니다.(To use an existing column master key, the user must have permission to access the key.) Or, you can generate a column master key in a selected key store (Windows Certificate Store or Azure Key Vault) and define the key in the database.

키 저장소Key Storage

열 마스터 키를 저장할 위치를 선택합니다.Choose where the column master key will be stored.

상시 암호화 용어Always Encrypted Terms

  • 결정적 암호화 는 지정된 일반 텍스트 값에 대해 항상 동일한 암호화된 값을 생성하는 방법을 사용합니다.Deterministic encryption uses a method which always generates the same encrypted value for any given plain text value. 결정적 암호화를 사용하는 경우 암호화된 값을 기반으로 테이블 조인, 동등 여부 기준 필터링 및 그룹화가 가능하지만, 권한이 없는 사용자가 암호화된 열의 패턴을 검사하여 암호화된 값에 대한 정보를 추측할 수도 있습니다.Using deterministic encryption allows grouping, filtering by equality, and joining tables based on encrypted values, but can also allow unauthorized users to guess information about encrypted values by examining patterns in the encrypted column. 이 약점은 True/False 또는 North/South/East/West 지역과 같은 가능한 암호화된 값의 작은 집합이 있는 경우에 증가합니다.This weakness is increased when there is a small set of possible encrypted values, such as True/False, or North/South/East/West region. 결정적 암호화에서는 문자 열에 대해 binary2 정렬 순서를 적용하는 열 데이터 정렬을 사용해야 합니다.Deterministic encryption must use a column collation with a binary2 sort order for character columns.

  • 임의 암호화 는 예측하기 어려운 방식으로 데이터를 암호화하는 방법을 사용합니다.Randomized encryption uses a method that encrypts data in a less predictable manner. 임의 암호화는 더 안전하지만 암호화된 열에서 동등 검색, 그룹화, 인덱싱 및 조인을 금지합니다.Randomized encryption is more secure, but prevents equality searches, grouping, indexing, and joining on encrypted columns.

  • 열 마스터 키 는 열 암호화 키를 암호화하는 데 사용되는 키를 보호합니다.Column master keys are protecting keys used to encrypt column encryption keys. 열 마스터 키는 신뢰할 수 있는 키 저장소에 저장되어야 합니다.Column master keys must be stored in a trusted key store. 열 마스터 키에 대한 정보는 해당 위치를 포함하여 시스템 카탈로그 뷰에서 데이터베이스에 저장됩니다.Information about column master keys, including their location, is stored in the database in system catalog views.

  • 열 암호화 키 는 데이터베이스 열에 저장된 중요한 데이터를 암호화하는 데 사용됩니다.Column encryption keys are used to encrypt sensitive data stored in database columns. 열의 모든 값은 단일 열 암호화 키를 사용하여 암호화할 수 있습니다.All values in a column can be encrypted using a single column encryption key. 열 암호화 키의 암호화된 값은 시스템 카탈로그 뷰에서 데이터베이스에 저장됩니다.Encrypted values of column encryption keys are stored in the database in system catalog views. 백업을 위해 열 암호화 키를 안전한/신뢰할 수 있는 위치에 저장해야 합니다.You should store column encryption keys in a secure/trusted location for backup.

참고 항목See Also

상시 암호화(데이터베이스 엔진) Always Encrypted (Database Engine)
Azure 주요 자격 증명 모음을 사용한 확장 가능 키 관리(SQL Server)Extensible Key Management Using Azure Key Vault (SQL Server)