Snowflake Connector for Microsoft Power Platform: 보안 통합 만들기

보안 통합의 external_oauth_audience_list 매개 변수는 Microsoft Entra ID를 구성하는 동안 지정된 애플리케이션 ID URI와 정확히 일치해야 합니다.

위임된 인증 또는 서비스 주체 기반 보안 통합을 만듭니다.

  1. Navigate to Snowsight.

  2. 워크시트를 엽니다.

  3. 다음 중 하나를 실행합니다.

    1. 위임된 인증:

      CREATE SECURITY INTEGRATION(External OAuth) 명령을 사용하여 다음 매개 변수를 통해 보안 통합을 생성합니다.

      CREATE SECURITY INTEGRATION IF NOT EXISTS external_oauth_azure_1
         TYPE = EXTERNAL_OAUTH
         ENABLED = TRUE
         EXTERNAL_OAUTH_TYPE = AZURE
         EXTERNAL_OAUTH_ISSUER = '{AZURE_AD_ISSUER}'
         EXTERNAL_OAUTH_JWS_KEYS_URL = '{AZURE_AD_JWS_KEY_ENDPOINT}'
         EXTERNAL_OAUTH_AUDIENCE_LIST = ('{SNOWFLAKE_APPLICATION_ID_URI}')
         EXTERNAL_OAUTH_TOKEN_USER_MAPPING_CLAIM = 'upn'
         EXTERNAL_OAUTH_SNOWFLAKE_USER_MAPPING_ATTRIBUTE = { 'LOGIN_NAME' | 'EMAIL_ADDRESS' }
      
      Copy

    위임된 인증을 사용할 때 Snowflake 사용자의 login_name 또는 `email_address`는 Power Automate 흐름을 실행할 사용자의 Entra 이메일과 MUST 일치해야 합니다.

    예:

    ALTER USER SNOWSQL_DELEGATE_USER
    LOGIN_NAME = '{ENTRA-USERID}' or EMAIL_ADDRESS = 'ENTRA-USERID'
    DISPLAY_NAME = 'SnowSQL Delegated User'
    COMMENT = 'A delegate user for SnowSQL client to be used for OAuth based connectivity';
    
    Copy

    OR

    • 서비스 주체 인증:

      CREATE SECURITY INTEGRATION external_oauth_azure_2
         TYPE = EXTERNAL_OAUTH
         ENABLED = TRUE
         EXTERNAL_OAUTH_TYPE = AZURE
         EXTERNAL_OAUTH_ISSUER = '{AZURE_AD_ISSUER}'
         EXTERNAL_OAUTH_JWS_KEYS_URL = '{AZURE_AD_JWS_KEY_ENDPOINT}'
         EXTERNAL_OAUTH_AUDIENCE_LIST = ('{SNOWFLAKE_APPLICATION_ID_URI}')
         EXTERNAL_OAUTH_TOKEN_USER_MAPPING_CLAIM = 'sub'
         EXTERNAL_OAUTH_SNOWFLAKE_USER_MAPPING_ATTRIBUTE = 'login_name';
      
      Copy
  4. 서비스 주체 기반 연결을 위한 사용자를 만듭니다.

    • 하위 값은 Snowflake의 사용자에게 매핑되어야 하며, 높은 권한 계정인 ACCOUNTADMIN, ORGADMIN 또는 SECURITYADMIN 사용을 방지해야 합니다.

    CREATE OR REPLACE USER SNOWSQL_OAUTH_USER
    LOGIN_NAME = '<subvalue from decoded token>'
    DISPLAY_NAME = 'SnowSQL OAuth User'
    COMMENT = 'A system user for SnowSQL client to be used for OAuth based connectivity';
    
    CREATE ROLE ANALYST;
    
    GRANT ROLE ANALYST TO USER SNOWSQL_OAUTH_USER;
    
    Copy

참고

Azure AD용 보안 통합이 이전에 구성된 경우, 아래에 설명된 대로 :doc:`ALTERSECURITYINTEGRATION</sql-reference/sql/alter-security-integration-oauth-external>`을 실행합니다.

ALTER SECURITY INTEGRATION external_oauth_azure_1 SET EXTERNAL_OAUTH_TOKEN_USER_MAPPING_CLAIM = ('sub','upn');
Copy

다음 단계

이러한 절차를 완료한 후 Snowflake Connector for Microsoft Power Platform: [선택 사항] Entra 인증 설정 유효성 검사 의 단계를 따르십시오.