Network Policy Advisor

개요

Snowflake 네트워크 정책은 강력한 보안 제어 수단이지만, 특히 현재 정책이 없거나 트래픽 패턴이 복잡한 경우에는 올바르게 설계하기 어려울 수 있습니다.

Network Policy Advisor는 SECURITYADMIN 역할의 사용자인 보안 *관리자*가 과거 수신 액세스 데이터를 기반으로 수신 네트워크 정책의 권장 후보를 생성할 수 있도록 안내하는 :ref:`단계별 프로시저 <label-gen-and-eval-candidate-network-policy>`입니다. 이를 통해 관리자는 정책을 활성화하기 전에 가상 시뮬레이션을 사용하여 권장 정책을 평가합니다. 사용자 또는 계정의 모든 사용자에 대한 후보 네트워크 정책을 추천하고 평가할 수 있습니다. 어드바이저 프로시저에는 두 개의 무중단 시스템 저장 프로시저 호출이 포함됩니다. 이러한 프로시저는 사람이 읽을 수 있는 SQL 및 평가 결과를 생성하며, 이를 검토하고 구체화한 다음 수동으로 적용할 수 있습니다.

고려 사항

Snowflake Network Policy Advisor 는 기존 네트워크 정책을 자동으로 활성화하거나 수정하지 않습니다. 이는 IP 주소가 네트워크 환경에 맞거나 안전한지 여부를 결정하지 않습니다. 어드바이저는 권장 사항과 시뮬레이션만 제공합니다. 최종 네트워크 정책 결정(즉, 기존 네트워크 규칙 및 정책에 대한 모든 변경)은 고객의 책임입니다.

주요 이점

Network Policy Advisor 는 다음과 같은 주요 이점을 제공합니다.

  • 첫 번째 네트워크 정책을 안전하게 설계할 수 있습니다.

  • 적용 전에 차단될 트래픽에 대한 가시성을 제공합니다.

  • 보안 제어를 강화할 때 시행착오를 줄입니다.

  • 반복적인 구체화 및 유효성 검사 워크플로를 지원합니다.

액세스 제어 요구 사항

이러한 저장 프로시저를 실행하려면 사용자에게 최소한 SECURITYADMIN 역할이 있어야 합니다.

지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.

보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.

후보 네트워크 정책 생성 및 평가

계정에 대한 후보 네트워크 정책을 생성하고 평가하려면 Snowsight 에 로그인하여 워크시트를 열고 다음 단계를 따릅니다.

  1. RECOMMEND_NETWORK_POLICY 프로시저를 호출하여 후보 정책에 대한 SQL 구문을 생성합니다.

    USE ROLE SECURITYADMIN;
    
    CALL SNOWFLAKE.NETWORK_SECURITY.RECOMMEND_NETWORK_POLICY(
      LOOKBACK_DAYS => 30,
      );
    
  2. 이전 단계에서 생성된 SQL 구문을 검토합니다.

  3. 검토한 내용을 기반으로 다음 예제와 유사한 명령을 실행하여 후보 네트워크 규칙 및 정책을 생성합니다.

    USE ROLE SECURITYADMIN;
    
    -- Create a network rule
    CREATE OR REPLACE NETWORK RULE my_ingress_rule
      MODE = INGRESS
      TYPE = IPV4
      VALUE_LIST = ('203.0.113.0/24', ...);
    
    -- Create a network policy
    CREATE OR REPLACE NETWORK POLICY my_ingress_policy
      ALLOWED_NETWORK_RULE_LIST = ('my_ingress_rule');
    
  4. 후보 정책에 대해 EVALUATE_CANDIDATE_NETWORK_POLICY 프로시저를 실행하여 허용하거나 차단할 IP 주소를 시뮬레이션합니다.

    USE ROLE SECURITYADMIN;
    
    CALL SNOWFLAKE.NETWORK_SECURITY.EVALUATE_CANDIDATE_NETWORK_POLICY(
      POLICY_NAME => 'my_ingress_policy'
      );
    
  5. 출력을 분석하여 IP 주소가 권장 후보 정책에 의해 허용되거나 차단되는지 확인합니다.

  6. 평가 결과에 따라 후보 정책을 구체화합니다.

    예를 들어, 합법적이지만 차단된 IPs를 허용하는 규칙을 추가하고 승인되지 않았지만 허용된 IPs에 대한 규칙을 제거할 수 있습니다.

  7. 필요한 경우 EVALUATE_CANDIDATE_NETWORK_POLICY 프로시저를 다시 실행하고 허용 가능한 결과를 반환할 때까지 후보 네트워크 정책을 구체화하여 후보 네트워크 정책을 다시 평가합니다.

  8. (선택 사항) 후보 정책이 성공적으로 수행되는지 확인한 후 활성화합니다.

    ALTER ACCOUNT SET NETWORK_POLICY = 'my_ingress_policy';
    
  9. (선택 사항) 네트워크의 수신 트래픽 기록을 보려면 다음과 같은 쿼리를 실행합니다.

    USE ROLE ACCOUNTADMIN;
    
    SELECT *
      FROM SNOWFLAKE.ACCOUNT_USAGE.INGRESS_NETWORK_ACCESS_HISTORY
      LIMIT 100;