Openflow - BYOC 배포를 위한 키 페어 인증 설정

Openflow - BYOC 배포를 위한 키 페어 인증 설정

Openflow 커넥터와 함께 키 페어 인증을 위해 Snowflake 서비스 사용자를 설정하는 방법을 설명합니다.

출처: Snowflake 문서

본문

이 주제에서는 Openflow 커넥터와 함께 키 페어 인증을 위해 Snowflake 서비스 사용자를 설정하는 방법을 설명합니다.

Snowflake Managed Token(SNOWFLAKE_MANAGED 인증 전략)은 Openflow - Snowflake Deployments와 Openflow - BYOC Deployments 모두에서 커넥터가 Snowflake에 인증하는 기본적이고 권장되는 방식입니다. 서비스 사용자, 키 페어, 어떤 종류의 시크릿 관리도 필요하지 않습니다. 런타임의 execute-as 역할이 인증을 자동으로 처리합니다.

이 주제는 Openflow - BYOC Deployments에 커넥터를 배포하고 커넥터의 Snowflake Authentication Strategy 매개변수를 KEY_PAIR로 설정한 경우에만 사용하세요. KEY_PAIR에서는 런타임의 execute-as 역할을 Snowflake 서비스 사용자에게 부여하며, 관리 토큰을 통해 런타임이 해당 역할에 자동으로 도달하게 하지 않습니다.

Snowflake 서비스 사용자 만들기

키 페어 인증은 Openflow - BYOC Deployments에서만 사용할 수 있으며 기본 SNOWFLAKE_MANAGED 인증 전략에는 필요하지 않습니다. 커넥터의 Snowflake Authentication Strategy 매개변수를 KEY_PAIR로 설정하지 않았다면 이 섹션을 건너뛰세요.

  1. 유형이 SERVICE인 Snowflake 사용자를 만들고 이 런타임에 대해 이미 구성한 execute-as 역할을 부여하여, 서비스 사용자가 SNOWFLAKE_MANAGED에서 런타임이 그렇지 않으면 자동으로 사용할 것과 동일한 권한을 갖도록 하세요:
CREATE USER <username> TYPE=SERVICE COMMENT='Service user for automated access of Openflow';
GRANT ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL TO USER <username>;
  1. (공개 키와 개인 키) 보안 키 쌍을 만듭니다. 사용자의 개인 키를 커넥터 구성에 제공할 파일에 저장하세요. 공개 키를 Snowflake 서비스 사용자에 할당합니다:
ALTER USER <username> SET RSA_PUBLIC_KEY = '<public_key>';

자세한 내용은 Key-pair authentication and key-pair rotation을 참조하세요. 3. 커넥터의 세대(gen 1 또는 gen 2)에 맞는 방법으로 커넥터가 참조할 수 있도록 개인 키를 저장하세요:

  • gen 2 커넥터의 경우 개인 키를 담을 Snowflake 시크릿을 만들고 execute-as 역할에 READ 권한을 부여한 다음 커넥터 구성에서 시크릿을 직접 참조하세요:
CREATE SECRET <secret_name>
  TYPE = GENERIC_STRING
  SECRET_STRING = '<private_key>';

GRANT READ ON SECRET <secret_name> TO ROLE OPENFLOW_<RUNTIME_NAME>_EXECUTE_AS_RL;
  • gen 1 커넥터의 경우 Openflow가 지원하는 시크릿 관리자(예: AWS, Azure, HashiCorp)를 구성하고 공개 키와 개인 키를 시크릿 저장소에 저장하세요:

    시크릿 관리자를 구성한 후에는 여기에 어떻게 인증할지 결정하세요. AWS에서는 Openflow와 연결된 EC2 인스턴스 역할을 사용하여 다른 시크릿을 유지할 필요가 없도록 하세요.

  1. Openflow에서 오른쪽 위 햄버거 메뉴에서 이 시크릿 관리자와 연결된 Parameter Provider를 구성하세요. Controller Settings » Parameter Provider로 이동한 다음 매개변수 값을 가져오세요.

이 시점에서 모든 자격 증명은 연결된 매개변수 경로로 참조할 수 있으며 Openflow 내에 민감한 값을 유지할 필요가 없습니다.

참고: 시크릿 관리자를 사용하는 대신 개인 키 값을 매개변수 컨텍스트에 직접 붙여넣을 수도 있습니다. 하지만 그렇게 하면 조직의 보안 정책에 따라 개인 키를 직접 보호할 책임이 있습니다.

KEY_PAIR를 사용할 때는 커넥터의 Snowflake Account Identifier 및 Snowflake Connection Strategy 매개변수도 설정해야 합니다. 둘 다 SNOWFLAKE_MANAGED에서는 비워 두거나 무시됩니다.

다음 단계

커넥터의 설정 페이지로 돌아가 커넥터 매개변수 구성을 계속하세요.

더 알아보기 (Learn more)