Openflow - Snowflake Deployment 설정: 런타임 역할 만들기¶
|OFSFSPCS|를 사용하려면 배포가 아닌 특정 런타임과 관련된 여러 리소스를 만들어야 합니다. 일반적으로 이러한 리소스에는 다음이 포함됩니다.
- 런타임 특정 런타임 역할 생성 
- 런타임 특정 네트워크 규칙 및 EAI(외부 액세스 통합) 생성 
이 항목에서는 이러한 리소스를 만드는 방법에 대해 설명합니다.
- 런타임 역할 및 관련 권한을 생성하여 Snowflake 배포 섹션의 런타임용 Snowflake 런타임 역할에 데이터를 작성합니다 
- 런타임 역할을 연결합니다. Snowflake 배포 섹션에서 런타임용 런타임 역할을 참조하세요. 
- 외부 액세스 통합을 만들고 런타임에 연결합니다. :ref:`외부 액세스 통합 만들기<label-create_network_rules_and_external_access_integrations>`를 참조하세요. 
- SPCS 송신을 사용하여 비공개 시스템에 연결하려면 아웃바운드 PrivateLink 연결이 필요합니다. 
런타임 역할 만들기¶
Openflow 런타임을 만들고 편집할 때 런타임 소유자는 역할을 런타임과 연결할 수 있습니다. 이 역할은 런타임 내에서 실행되는 흐름에 사용됩니다. 런타임 역할에 대한 자세한 내용은 런타임 역할이란 무엇입니까? 섹션을 참조하세요.
참고
OPENFLOW_ADMIN 사용자는 런타임 역할을 생성하고 OPENFLOW_ADMIN에 부여하여 해당 역할을 부여받은 사용자가 런타임에서 이 역할을 설정할 수 있도록 합니다.
런타임 역할 생성은 런타임을 생성하기 위한 전제 조건이며, 여기에는 다음 단계가 포함됩니다.
- 자체 역할 만들기 
- 런타임에서 사용하는 웨어하우스에 대한 액세스 권한을 해당 역할에 부여합니다. 
- 런타임에서 사용하는 Snowflake 오브젝트에 대한 액세스 권한을 해당 역할에 부여합니다. 
- 런타임에서 사용하는 외부 액세스 통합에 대한 액세스 권한을 해당 역할에 부여합니다. 
런타임 역할을 만들려면 다음을 수행합니다.
- 필요한 런타임 역할을 만듭니다. - 참고 - ``<RUNTIMENAME>``는 연결된 런타임의 이름을 나타냅니다. - USE ROLE OPENFLOW_ADMIN; CREATE ROLE IF NOT EXISTS OPENFLOW_RUNTIME_ROLE_<RUNTIMENAME>; GRANT ROLE OPENFLOW_RUNTIME_ROLE_<RUNTIMENAME> TO ROLE OPENFLOW_ADMIN; 
- 이 런타임 역할이 데이터 수집에 사용할 기존 웨어하우스를 사용하도록 허용합니다. 나중에 이 런타임 역할을 사용할 런타임용 커넥터를 구성할 때 이 웨어하우스를 사용합니다. - GRANT USAGE, OPERATE ON WAREHOUSE <OPENFLOW_INGEST_WAREHOUSE> TO ROLE OPENFLOW_RUNTIME_ROLE_<RUNTIMENAME>; 
- 이 런타임 역할이 Snowflake 오브젝트를 사용하거나 생성하거나 액세스할 수 있도록 허용합니다. - 참고 - 생성되는 Openflow 커넥터에 따라 필요한 기본 오브젝트가 달라집니다. 아래 예는 설명 목적으로만 제공됩니다. - GRANT USAGE ON DATABASE <OPENFLOW_SPCS_DATABASE> TO ROLE OPENFLOW_RUNTIME_ROLE_<RUNTIMENAME>; GRANT USAGE ON SCHEMA <OPENFLOW_SPCS_SCHEMA> TO ROLE OPENFLOW_RUNTIME_ROLE_<RUNTIMENAME>; 
네트워크 규칙 및 외부 액세스 통합 만들기¶
Snowflake의 보안 모델은 :doc:`네트워크 정책</user-guide/network-policies>`을 사용하여 Snowflake 외부의 특정 엔드포인트 및 시스템에 대한 보안 액세스를 지원합니다.
네트워크 정책의 두 가지 주요 측면은 네트워크 규칙 및 :doc:`EAI(외부 액세스 통합)</developer-guide/external-network-access/external-network-access-overview>`입니다. 각각은 런타임에 필요한 외부 리소스에 대한 보안 액세스를 제공하는 데 사용됩니다.
네트워크 규칙 및 외부 액세스 통합을 만드는 데 필요한 세 가지 단계가 있습니다.
- 네트워크 규칙을 만들어 네트워크 식별자를 논리 영역으로 그룹화합니다. 
- EAI(외부 액세스 통합)를 만들고 네트워크 규칙 목록을 지정한 후 런타임 역할에 EAI에 대한 USAGE 권한이 있는지 확인합니다. 
- 런타임을 만들 때 Openflow UI에서 EAI를 런타임에 연결합니다. 
필요한 네트워크 규칙과 EAI를 만들려면 다음 단계를 수행합니다.
참고
이 예에서는 RUNTIME_NAME을 생성 중인 런타임 이름의 자리 표시자로 사용합니다.
- 적절한 네트워크 규칙을 만듭니다. 자세한 내용은 CREATE NETWORK RULE 섹션을 참조하십시오. - 참고 - ``<OPENFLOW_DATABASE>``는 네트워크 규칙을 포함할 데이터베이스의 이름을 나타냅니다. Snowflake는 Openflow와 관련된 네트워크 규칙 및 외부 액세스 통합을 위한 특정 데이터베이스를 만들 것을 제안합니다. - USE DATABASE <OPENFLOW_DATABASE>; CREATE OR REPLACE NETWORK RULE OPENFLOW_<RUNTIME_NAME>_NETWORK_RULE MODE = EGRESS TYPE = HOST_PORT VALUE_LIST = ('comma separated list of host:port pairs'); 
- 연결된 외부 통합을 만듭니다. 자세한 내용은 CREATE EXTERNAL ACCESS INTEGRATION 섹션을 참조하십시오. - USE ROLE ACCOUNTADMIN; CREATE OR REPLACE EXTERNAL ACCESS INTEGRATION OPENFLOW_<RUNTIME>_EAI ALLOWED_NETWORK_RULES = (OPENFLOW_<RUNTIME_NAME>_NETWORK_RULE) ENABLED = TRUE; 
- 이전에 생성된 런타임 역할에 EAI에 대한 액세스 권한을 부여합니다. - GRANT USAGE ON INTEGRATION OPENFLOW_<RUNTIME_NAME>_EAI TO ROLE OPENFLOW_RUNTIME_ROLE_<RUNTIME_NAME>;