민감한 데이터를 수동으로 분류¶
이 항목에서는 스키마에서 테이블을 분류하고, 분류 결과를 검토하고, SQL 또는 Snowsight 를 사용하여 테이블의 열에 시스템 태그 를 설정하는 방법에 대한 정보를 제공합니다.
개요¶
데이터 관리자는 데이터 개인정보 보호 규정을 충족하기 위해 스키마의 테이블을 분류할 수 있습니다. 이러한 테이블에는 다음 시나리오가 포함됩니다.
- 스키마의 새 테이블. 
- 동일한 스키마 내의 테이블에 있는 새 열 또는 변경된 열. 
- 다시 분류해야 할 수도 있는 이전에 분류된 테이블. 
이러한 시나리오를 평가하면 데이터 관리자가 민감한 개인 정보를 분류할 수 있습니다. 열에 시스템 태그를 설정하면 데이터 모니터링이 용이해집니다. 이후, 데이터 엔지니어는 Snowsight 의 마스킹 정책이나 행 액세스 정책을 사용하거나 SQL을 사용하여 개인 데이터와 민감한 데이터를 보호할 수 있습니다.
데이터 분류 시작하기¶
스키마에서 단일 테이블이나 여러 테이블을 분류하기 전에 다음을 수행하십시오.
- 워크플로를 선택합니다. - 프로그래밍 방식을 선호하는 경우 다음 섹션의 단계를 따르십시오. 
- 웹 인터페이스를 사용하려면 Snowsight 을 사용하여 스키마의 테이블 분류하기 섹션의 단계를 따르십시오. 
 
- 사용할 웨어하우스를 결정합니다. 예를 들어, 정확한 보고 및 예산 책정을 활성화하려면 자신이 속한 비용 센터 또는 사업부와 일치하는 웨어하우스를 사용하십시오. 
- 워크플로에 대기 시간을 고려하십시오. Snowsight 는 12시간마다 Snowsight 의 Databases 영역을 업데이트하며, 이때 업데이트된 테이블을 분류할 수 있습니다. 
- 현재 역할에 대한 액세스 제어 구성을 확인합니다. - 해당 역할을 가진 사용자가 액세스할 수 있는 오브젝트에 대한 권한 부여를 보려면 SHOW GRANTS TO ROLE 문을 사용하십시오. 사용 중인 역할에는 최소한 다음 권한을 부여해야 합니다. - 분류 프로세스 중에 사용할 웨어하우스에 대한 USAGE. 
- 분류 프로세스를 시작할 테이블에 대한 SELECT. 
- 열에 시스템 태그를 설정할 수 있는 SNOWFLAKE.CORE_VIEWER 데이터베이스 역할. 
- Account Usage DATA_CLASSIFICATION_LATEST 뷰를 쿼리하기 위한 SNOWFLAKE.GOVERNANCE_VIEWER 데이터베이스 역할. 
 
- 다른 권한 부여 조합은 데이터 분류 권한 참조 를 확인하십시오. 
- 액세스 제어 모델을 사용하면 다양한 가상 사용자가 워크플로에 참여할 수 있습니다. 예를 들어, 데이터 관리자는 스키마에서 테이블 분류를 스테이징할 수 있고 데이터 엔지니어는 Snowsight 에서 결과를 평가할 수 있습니다. 자신에게 가장 적합한 액세스 제어 모델과 워크플로를 선택하십시오. 
 
민감한 데이터를 수동으로 분류하는 데 드는 비용¶
수동 분류 프로세스에서는 분류 수행 시 사용 및 실행 중인 가상 웨어하우스 에서 제공하는 컴퓨팅 리소스가 필요합니다.
테이블/뷰에서 데이터를 분류하는 데 필요한 시간(따라서 웨어하우스에서 소비되는 크레딧 수)은 분류할 열의 함수입니다.
특히, 테이블 또는 뷰에 분류를 지원하는 열의 개수가 많은 경우에는 처리 시간에 영향을 미칠 수 있습니다. 하지만 일반적으로 처리 속도는 웨어하우스 크기에 따라 선형적으로 변화합니다. 다시 말해, 웨어하우스의 크기가 증가할 때마다(X-small에서 Small로) 일반적으로 처리 시간이 절반으로 감소합니다.
다음 일반 지침을 사용하여 웨어하우스 크기 를 선택합니다.
- 처리 시간에 대한 걱정 없음: X-Small 웨어하우스. 
- 테이블에 최대 100개의 열: Small 웨어하우스. 
- 테이블에 101~300개의 열: Medium 웨어하우스. 
- 한 테이블에 300개 초과: Large 웨어하우스. 
자세한 내용은 웨어하우스 고려 사항 섹션을 참조하십시오.
SQL을 사용하여 단일 테이블 분류하기¶
이 접근 방식에서는 SQL을 사용하여 테이블을 분류하고 테이블의 열에 시스템 태그를 설정합니다. 데이터 분류 시작하기 섹션을 검토하여 사용 중인 역할에 스키마의 테이블을 분류하는 데 필요한 액세스 제어 권한이 있는지 확인하십시오.
이 절차에서는 적절한 권한이 부여된 역할을 사용한다고 가정합니다. SQL을 사용하여 스키마의 테이블을 분류하고 테이블 열에 시스템 태그를 설정하려면 다음 단계를 완료하십시오.
- 분류할 테이블을 식별합니다. 
- SYSTEM$CLASSIFY 저장 프로시저를 호출하여 테이블의 열을 분류하고 태그를 지정합니다. - CALL SYSTEM$CLASSIFY('hr.tables.empl_info', {'auto_tag': true}); 
- TAG_REFERENCES_ALL_COLUMNS Information Schema 테이블 함수를 호출하여 테이블 열의 태그 할당을 확인합니다. - SELECT * FROM TABLE( hr.INFORMATION_SCHEMA.TAG_REFERENCES_ALL_COLUMNS( 'hr.tables.empl_info', 'table' )); 
- 그 이후에는 Account Usage DATA_CLASSIFICATION_LATEST 뷰를 쿼리하여 테이블의 최신 분류 결과를 확인할 수 있습니다. 
분류하려는 각 테이블에 대해 이러한 단계를 반복합니다.
SQL을 사용하여 비동기 방식으로 스키마의 테이블 분류하기¶
이 접근 방식에서는 SQL을 사용하여 스키마의 모든 테이블을 비동기 방식으로 분류하고 각 테이블의 열에 시스템 태그를 설정합니다. 이 절차에서는 다음과 같이 가정합니다.
- 이 절차에서는 적절한 권한이 부여된 역할을 사용한다고 가정합니다. 
- 1,000개 미만의 테이블 오브젝트를 포함하는 스키마를 선택합니다. SHOW TABLES IN SCHEMA 명령을 사용하여 스키마의 테이블 오브젝트 수를 확인할 수 있습니다. 
SQL을 사용하여 스키마의 모든 테이블을 분류하고 각 테이블의 각 열에 시스템 태그를 설정하려면 다음 단계를 완료하십시오.
- 분류할 테이블이 포함된 스키마를 식별합니다. 
- SYSTEM$CLASSIFY_SCHEMA 저장 프로시저를 호출하여 스키마에서 테이블 분류를 예약합니다. - CALL SYSTEM$CLASSIFY_SCHEMA('hr.tables', {'auto_tag': true}); - 동시에 너무 많은 스키마를 분류하지 않도록 주의하십시오. 자세한 내용은 사용법 노트 를 참조하십시오. 
- 결과를 보려면 스키마의 각 테이블에서 SYSTEM$GET_CLASSIFICATION_RESULT 함수를 호출합니다. - SELECT SYSTEM$GET_CLASSIFICATION_RESULT('hr.tables.empl_info'); 
- TAG_REFERENCES_ALL_COLUMNS Information Schema 테이블 함수를 호출하여 테이블 열의 태그 할당을 확인합니다. - SELECT * FROM TABLE( hr.INFORMATION_SCHEMA.TAG_REFERENCES_ALL_COLUMNS( 'hr.tables.empl_info', 'table' )); 
- 그 이후에는 Account Usage DATA_CLASSIFICATION_LATEST 뷰를 쿼리하여 테이블의 최신 분류 결과를 확인할 수 있습니다. 
분류하려는 테이블이 포함된 각 스키마에 대해 이러한 단계를 반복합니다.
팁
스키마에서 테이블 분류를 취소하려면 SYSTEM$CANCEL_CLASSIFY_SCHEMA 저장 프로시저를 호출합니다.
Snowsight 을 사용하여 스키마의 테이블 분류하기¶
이 접근 방식에서는 Snowsight 를 사용하여 스키마의 테이블 분류를 스테이징하고 스키마의 각 테이블에 대한 열에 자동으로 태그를 지정합니다. 이 절차에서는 적절한 권한이 부여된 역할을 사용한다고 가정합니다.
스키마의 모든 테이블을 분류하고 스키마에 포함된 각 테이블의 각 열에 시스템 태그를 설정하려면 Snowsight 에서 다음 단계를 완료하십시오.
- 스키마에서 테이블의 분류 및 태그 지정을 트리거합니다. - Snowsight 에서 오브젝트 탐색기를 사용하여 선택한 스키마로 이동합니다. 
- More 메뉴(…)를 선택한 다음 Classify and Tag Sensitive Data 를 선택합니다. 
- 웨어하우스가 아직 사용 중이 아니면 웨어하우스를 선택합니다. 
- 분류할 테이블을 선택합니다. 기본적으로, 테이블은 선택되어 있지 않습니다. 
- Advanced Options 를 평가하고 필요에 따라 선택합니다. - Auto-tagging data 옵션을 사용하면 데이터를 분류한 후 열에 자동으로 태그를 할당할 수 있습니다. 이 옵션은 기본적으로 활성화되어 있으며 필요한 경우 비활성화할 수 있습니다. 
- Include custom classifiers 옵션을 사용하면 데이터를 분류하는 데 액세스할 수 있는 사용자 지정 분류기 를 사용할 수 있습니다. - 액세스할 수 있는 사용자 지정 분류기를 확인하려면 View custom classifiers 를 선택하고 워크시트에서 명령을 실행합니다. 
 
 
- Classify and Tag Sensitive Data 를 선택합니다. - 이 옵션을 선택하면 이전에 분류된 테이블을 다시 분류할 수 있습니다. - Snowsight 는 최대 1,000개의 테이블을 분류합니다. - 또는 SQL을 사용하여 비동기 방식으로 스키마의 테이블 분류하기 에 표시된 대로 Worksheet 를 열고 SYSTEM$CLASSIFY_SCHEMA 를 호출할 수 있습니다. 이 옵션을 선택하는 경우 이 저장 프로시저를 호출한 후 오브젝트 탐색기에서 스키마로 다시 이동하십시오. 비교적 짧은 기간 동안 이 저장 프로시저를 호출하는 횟수를 염두에 두어야 합니다. 자세한 내용은 사용법 노트 를 참조하십시오. 
- 분류 프로세스가 완료되도록 합니다. 완료되면 CLASSIFICATION 열에 녹색 확인 표시가 나타납니다. 
- View Results 를 선택합니다. 
- 필요에 따라 태그 값을 변경합니다. 이렇게 하려면 SNOWFLAKE 데이터베이스에서 IMPORTED PRIVILEGES 권한이 부여된 역할을 사용하십시오. 
- 프롬프트에 따라 스키마의 테이블을 검토하고 승인합니다. 필요에 따라 태그 값을 업데이트합니다. 
- Complete classification 를 선택합니다. 
- Tables 탭에는 Classification results reviewed and applied 가 표시됩니다. 다음을 수행하여 태그 할당을 확인할 수 있습니다. - 테이블을 선택합니다. 
- Columns 탭으로 이동합니다. 
- TAGS 열을 검토합니다. 
 - 또는 다음을 수행할 수 있습니다. - 워크시트를 사용하여 TAG_REFERENCES_ALL_COLUMNS Information Schema 테이블 함수를 호출하면 특정 테이블의 열에 대한 태그 할당을 확인할 수 있습니다. 다른 옵션은 시스템 태그 추적하기 섹션을 참조하십시오. 
- 오브젝트 탐색기를 사용하여 뷰로 이동하거나 워크시트에서 뷰를 쿼리하여 Account Usage DATA_CLASSIFICATION_LATEST 뷰 레코드를 검토합니다. 
 
- 분류할 테이블이 포함된 다른 스키마에 대해 이러한 단계를 반복합니다.