Snowflake의 Tri-Secret Secure¶
Tri-Secret Secure 개요¶
Snowflake의 기본 제공 사용자 인증과 함께 이중 키 암호화 모델을 사용하면 *Tri-Secret Secure*라고 하는 3가지 수준의 데이터 보호가 가능합니다. Tri-Secret Secure는 Snowflake의 표준 암호화보다 높은 수준의 보안과 제어를 제공합니다.
Snowflake의 이중 키 암호화 모델은 Snowflake에서 유지 관리하는 키와 Snowflake 계정을 호스팅하는 클라우드 공급자 플랫폼에서 생성하는 CMK(고객 관리형 키)를 결합합니다. 이 모델은 Snowflake 데이터를 보호하는 복합 마스터 키를 생성합니다. 이 복합 마스터 키는 계정 계층 구조의 모든 키를 래핑하여 계정 마스터 키 역할을 합니다. 복합 마스터 키는 원시 데이터를 암호화하는 데는 절대 사용되지 않습니다. 예를 들어, 복합 마스터 키는 원시 데이터를 암호화하는 파일 키를 파생하는 데 사용되는 테이블 마스터 키를 래핑합니다.
주의
Snowflake를 통해 계정에 대해 |tri-secret-secure|를 활성화하기 전에 :ref:`label-customer-managed-keys`에 언급된 대로 키를 보호할 본인의 책임을 신중하게 고려해야 합니다. 복합 마스터 키 계층 구조에서 CMK(고객 관리형 키)가 해지되면 Snowflake가 더 이상 데이터의 암호를 해독할 수 없습니다.
궁금한 점이나 우려 사항이 있는 경우 `Snowflake 지원`_에 문의하세요.
Snowflake도 자체적으로 유지 관리하는 키에 대해 동일한 책임을 진다는 점에 유의하세요. 서비스의 모든 보안 관련 측면과 마찬가지로, Snowflake는 이러한 책임과 관련하여 최대한 주의하고 경계합니다.
Snowflake의 모든 키는 최고의 보안 인증을 획득할 수 있도록 SOC 2 타입 II, PCI-DSS, HIPAA 및 HITRUST CSF 등과 같은 엄격한 정책에 따라 유지됩니다.
하이브리드 테이블과의 Tri-Secret Secure 호환성¶
계정에서 하이브리드 테이블을 생성하려고 하며 TSS가 이미 활성화되어 있거나 활성화될 예정인 경우 전용 저장소 모드를 활성화해야 합니다. 자세한 내용은 TSS용 하이브리드 테이블 전용 저장소 모드 섹션을 참조하십시오.
|tri-secret-secure|의 활성화를 지원하는 CMK 자체 등록 이해¶
Snowflake 시스템 함수를 사용하여 |tri-secret-secure|와 함께 사용할 수 있도록 CMK를 등록할 수 있습니다. |tri-secret-secure|와 함께 사용할 CMK를 교체하기로 결정한 경우 SYSTEM$GET_CMK_INFO 함수는 새 CMK가 등록되고 활성화될 것인지 여부를 사용자에게 알려줍니다. CMK를 자체 등록한 후 Snowflake 지원에 문의하여 CMK에서 |tri-secret-secure|를 사용하도록 Snowflake 계정을 활성화할 수 있습니다.
지원 활성화를 통한 CMK 자체 등록은 다음과 같은 이점을 제공합니다.
CMK의 등록 및 인증 단계를 간소화합니다.
Tri-Secret Secure 를 통한 CMK 등록 및 활성화 상태에 대한 투명성을 제공합니다.
Snowflake 계정을 호스팅하는 클라우드 플랫폼에서 KMS(키 관리 서비스)와의 작업을 촉진합니다.
|tri-secret-secure|에서 사용할 수 있도록 CMK를 순환하고 새 CMK를 등록할 수 있습니다.
다음 목록은 지원 활성화를 통한 CMK 자체 등록이 작동하는 방식을 보여줍니다.
고객은 다음 작업을 수행합니다.
CMK를 만듭니다.
CMK를 등록합니다.
클라우드 공급자에 대한 정보를 생성합니다.
KMS 정책을 적용합니다.
Snowflake 계정과 CMK 간의 연결을 확인합니다.
Snowflake 지원에 문의하여 Snowflake 계정에서 Tri-Secret Secure 를 사용하도록 설정합니다.
Snowflake 지원을 통해 등록한 CMK에 따라 Snowflake 계정에서 Tri-Secret Secure 를 사용할 수 있습니다.
다음 섹션의 단계에서는 프로시저가 클라우드에 종속되지 않도록 하기 위해 ARN(Amazon Resource Number)과 같은 용어를 사용하지 않습니다. Snowflake 계정을 호스팅하는 클라우드 플랫폼에 관계없이 단계는 동일합니다. 그러나 각 클라우드 플랫폼 서비스가 다르기 때문에 일부 단계에 대한 시스템 함수 인자는 다릅니다.
CMK 자체 등록¶
|tri-secret-secure|에서 사용하기 위해 CMK를 자체 등록하려면 다음 단계를 완료하세요.
클라우드 공급자에서 CMK를 생성합니다.
Snowflake 계정을 호스팅하는 클라우드 플랫폼의 키 관리 서비스(KMS)에서 이 단계를 수행합니다.
Snowflake에서 SYSTEM$REGISTER_CMK_INFO 시스템 함수를 호출하여 KMS 통합에 CMK를 등록합니다.
Snowflake 계정을 호스팅하는 클라우드 플랫폼에 대한 시스템 함수 인자를 다시 한 번 확인합니다.
Snowflake에서 SYSTEM$GET_CMK_INFO 시스템 함수를 호출하여 등록한 CMK의 세부 정보를 확인합니다.
Snowflake에서 SYSTEM$GET_CMK_CONFIG 시스템 함수를 호출하여 클라우드 공급자에게 필요한 정보를 생성합니다.
이 정책을 통해 Snowflake가 사용자의 CMK에 액세스할 수 있습니다.
참고
|azure|가 Snowflake 계정을 호스팅하는 경우 함수에
tenant_id값을 전달해야 합니다.Snowflake에서 SYSTEM$VERIFY_CMK_INFO 시스템 함수를 호출하여 Snowflake 계정과 CMK의 연결을 확인합니다.
Snowflake 지원 에 문의하여 Snowflake 계정에서 Tri-Secret Secure 를 사용할 수 있도록 설정해 달라고 요청합니다.
이 때, Tri-Secret Secure 를 사용할 특정 계정을 언급해야 합니다.
|tri-secret-secure|를 통해 이미 활성화된 CMK에 대한 비공개 연결을 활성화하려는 경우 자세한 내용은 활성 CMK에 대한 비공개 연결 엔드포인트 활성화 섹션을 참조하세요.
CMK 상태 보기¶
언제든지 :doc:`/sql-reference/functions/system_get_cmk_info`를 호출하여 CMK의 등록 및 활성화 상태를 확인할 수 있습니다.
예를 들어, SYSTEM$GET_CMK_INFO 호출 시점에 따라 이 함수는 다음 출력을 반환합니다.
|tri-secret-secure|용 CMK 변경¶
Snowflake 시스템 함수는 보안 요구 사항에 따라 CMK(고객 관리형 키)를 변경하도록 지원합니다. 초기 CMK 등록에 사용한 단계와 동일한 단계를 사용하여 새 CMK를 등록합니다. 새 키를 사용하여 해당 단계를 다시 완료하면 시스템 함수의 출력이 달라집니다. 자체 등록 중에 호출하는 각 시스템 함수의 출력을 읽고 키가 변경되었는지 확인합니다. 예를 들어, CMK를 변경하고 SYSTEM$GET_CMK_INFO 함수를 호출하면 ``…is being rekeyed…``가 포함된 메시지가 반환됩니다.
|tri-secret-secure|와 AWS 외부 키 저장소 통합¶
또한 Snowflake는 |tri-secret-secure|와 AWS 외부 키 저장소를 통합하여 고객 관리형 키를 AWS 외부에서 안전하게 저장하고 관리할 수 있도록 지원합니다. Snowflake는 Thales HSM(하드웨어 보안 모듈) 및 Thales CCKM(CipherTrust 클라우드 키 관리자) 데이터 암호화 제품만 공식적으로 테스트하고 지원합니다.
Thales 솔루션을 사용하여 |tri-secret-secure|를 설정하고 구성하는 방법에 대한 자세한 내용은 `AWS Snowflake 계정에서 Tri-Secret Secure에 Thales 외부 키 저장소를 사용하는 방법<https://community.snowflake.com/s/article/thales-xks-for-tss-aws#e3>`_ 섹션을 참조하세요.