SQL Server 가져오기 및 내보내기 마법사로 Always Encrypted를 사용하여 열 간에 데이터 마이그레이션

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

SQL Server 가져오기 및 내보내기 마법사는 원본에서 대상으로 데이터를 복사할 수 있는 도구입니다. 이 문서에서는 원본 및/또는 대상이 Always Encrypted로 보호되는 열을 포함하는 SQL Server 데이터베이스인 경우 SQL Server 가져오기 및 내보내기 마법사를 사용하는 방법을 설명합니다.

마이그레이션 시나리오

SQL Server 가져오기 및 내보내기 마법사를 사용하여 암호화된 열로 또는 암호화된 열에서 데이터를 마이그레이션하는 다음과 같은 시나리오를 구현할 수 있습니다.

마이그레이션할 때 일반 텍스트 데이터 암호화

데이터 원본에 일반 텍스트 데이터가 포함되어 있고 대상이 암호화된 열을 포함하는 SQL Server 데이터베이스인 경우 SQL Server 가져오기 및 내보내기 마법사를 사용하여 원본에서 일반 텍스트 데이터를 검색하고 암호화한 데이터(암호 텍스트)를 대상 데이터베이스의 암호화된 열에 복사할 수 있습니다. 이 마이그레이션 시나리오의 경우 데이터 원본은 SQL Server 가져오기 및 내보내기 마법사에서 지원하는 모든 데이터 저장소일 수 있습니다. 예를 들어 파일, SQL Server 데이터베이스 또는 다른 데이터베이스 시스템의 데이터베이스입니다.

SQL Server 가져오기 및 내보내기 마법사에서 데이터를 암호화할 수 있도록 하려면 대상 데이터베이스 연결에 대해 Always Encrypted를 사용하도록 설정해야 하며 대상 데이터베이스 열의 데이터를 보호하는 키에 액세스할 수 있어야 합니다. 자세한 내용은 데이터베이스 연결에 Always Encrypted 사용 및 사용 안 함마이그레이션 중 데이터 암호화 또는 암호 해독 권한을 참조하세요.

마이그레이션할 때 암호화된 데이터 암호 해독

SQL Server 데이터베이스의 암호화된 데이터베이스 열에 저장된 데이터를 마이그레이션하는 경우 SQL Server 가져오기 및 내보내기 마법사를 구성하여 데이터의 암호를 해독하고 암호 해독된(일반 텍스트) 데이터를 대상으로 복사할 수 있습니다. 이 데이터는 SQL Server 가져오기 및 내보내기 마법사에서 지원하는 데이터 저장소(예: 파일)일 수 있습니다. SQL Server 데이터베이스 또는 다른 데이터베이스 시스템의 데이터베이스

SQL Server 가져오기 및 내보내기 마법사에서 데이터의 암호를 해독할 수 있도록 하려면 원본 데이터베이스 연결에 대해 Always Encrypted를 사용하도록 설정해야 하며 원본 데이터베이스 열의 데이터를 보호하는 키에 액세스할 수 있어야 합니다. 자세한 내용은 데이터베이스 연결에 Always Encrypted 사용 및 사용 안 함마이그레이션 중 데이터 암호화 또는 암호 해독 권한을 참조하세요.

마이그레이션할 때 데이터 다시 암호화

원본 SQL Server 데이터베이스의 암호화된 열에서 동일한 또는 다른 SQL Server 데이터베이스의 암호화된 열로 데이터를 복사하는 경우 원본에서 데이터를 검색한 후 데이터를 해독하고 대상 데이터베이스의 암호화된 열에 삽입하기 전에 데이터를 다시 암호화하도록 SQL Server 가져오기 및 내보내기 마법사를 구성할 수 있습니다. 대상 열의 스키마(예: 열 데이터 형식, 암호화 형식 및 열 암호화 키)가 원본 열의 스키마와 다른 경우 이 메서드를 사용합니다.

SQL Server 가져오기 및 내보내기 마법사가 데이터를 암호화하고 암호를 해독할 수 있도록 하려면 원본 데이터베이스 연결과 대상 데이터베이스 연결 모두에 대해 Always Encrypted를 사용하도록 설정해야 하며 원본 및 대상 데이터베이스 열 모두에서 데이터를 보호하는 키에 액세스할 수 있어야 합니다. 자세한 내용은 데이터베이스 연결에 Always Encrypted 사용 및 사용 안 함마이그레이션 중 데이터 암호화 또는 암호 해독 권한을 참조하세요.

마이그레이션 중에 암호화된 데이터 유지

원본 SQL Server 데이터베이스의 암호화된 열에서 동일한 또는 다른 SQL Server 데이터베이스의 암호화된 열로 데이터를 복사하고 대상 열이 원본 열과 정확히 동일한 데이터 형식, 암호화 형식 및 열 암호화 키를 포함하는 스키마를 사용하는 경우 SQL Server 가져오기 및 내보내기 마법사를 구성하여 원본 열에서 암호 텍스트를 검색하고 암호화된 데이터(암호 텍스트)를 암호화된 열에 삽입할 수 있습니다. 대상 SQL Server 데이터베이스에 있습니다.

이 시나리오에서는 SQL Server를 지원하는 모든 데이터 공급자를 사용하여 원본 또는 대상 SQL Server 데이터베이스에 연결할 수 있습니다. Always Encrypted를 지원하는 공급자를 사용하여 대상 데이터베이스에 연결하는 경우 데이터베이스 연결에 대해 Always Encrypted를 사용하지 않도록 설정해야 합니다. 자세한 내용은 데이터베이스 연결에 Always Encrypted 사용 및 사용 안 함을 참조하세요.

또한 SQL Server 가져오기 및 내보내기 마법사가 대상 데이터베이스에 연결하는 데 사용하는 데이터베이스 보안 주체(사용자)가 ALLOW_ENCRYPTED_VALUE_MODIFICATIONS 옵션을 ON으로 설정하여 구성되었는지 확인해야 합니다. 이 옵션은 대량 복사 작업에서 서버에 대한 암호화 메타데이터 검사를 표시하지 않습니다. 이렇게 하면 마법사가 데이터 암호를 해독하지 않고 암호화된 데이터를 대상 데이터베이스에 대량으로 삽입할 수 있습니다. 자세한 내용은 Always Encrypted로 보호되는 열에 암호화된 데이터를 대량 로드를 참조하세요.

데이터베이스 연결에 Always Encrypted 사용 및 사용 안 함

마이그레이션 시나리오에서 SQL Server 가져오기 및 내보내기 마법사가 데이터를 암호화 및/또는 암호 해독할 수 있어야 하는 경우에는 Always Encrypted를 지원하는 데이터 공급자를 사용하여 원본 SQL Server 데이터베이스 연결 및/또는 대상 SQL Server 데이터베이스 연결을 구성해야 합니다. 원본 및/또는 대상 데이터베이스 연결에 대해 Always Encrypted를 사용하도록 설정해야 합니다.

마법사에서 해당 연결의 데이터를 암호화하거나 암호 해독할 필요가 없는 경우 연결에 데이터 공급자를 사용할 수 있습니다.

SQL Server 가져오기 및 내보내기 마법사의 다음 데이터 공급자는 Always Encrypted를 지원합니다.

마이그레이션 중 데이터 암호화 또는 암호 해독 권한

SQL Server 원본 또는 대상 데이터베이스에 저장된 데이터를 암호화하거나 암호 해독하려면 원본 데이터베이스에서 VIEW ANY COLUMN MASTER KEY DEFINITION 및 VIEW ANY COLUMN ENCRYPTION KEY DEFINITION 권한이 필요합니다. 열 마스터 키에 액세스하고 사용하려면 키 저장소 권한도 필요합니다. 키 관리 작업에 필요한 키 저장소 권한에 대한 자세한 내용은 Always Encrypted에 대한 열 마스터 키 만들기 및 저장으로 이동하여 키 저장소와 관련된 섹션을 찾습니다.

다음 단계

참고 항목