Ir para o conteúdo

Pré-requisitos do OAuth 2.0 de 3 pernas (3LO) para o conector Snowflake no Integration Studio

Introdução

Estes são os pré-requisitos para usar OAuth 2.0 de 3 pernas (3LO) com o conector Snowflake. Primeiro, crie e configure uma integração de segurança OAuth do Snowflake e, em seguida, configure um registro de aplicativo no Console de Gerenciamento com a integração de segurança.

Nota

A versão do agente 10.83 / 11.21 ou posterior é necessária para usar autenticação OAuth 2.0 de 3 pernas.

Criar e configurar uma integração de segurança OAuth do Snowflake

Siga estas etapas para criar e configurar uma integração de segurança OAuth do Snowflake:

  1. Na interface do Snowflake, navegue até o Snowflake CLI.

  2. Para criar a integração de segurança, execute o seguinte comando com os parâmetros OAUTH_REDIRECT_URI e OAUTH_CLIENT_RSA_PUBLIC_KEY modificados com base na sua implementação:

    CREATE SECURITY INTEGRATION jitterbit_app
      TYPE = OAUTH
      ENABLED = TRUE
      OAUTH_CLIENT = CUSTOM
      OAUTH_CLIENT_TYPE = 'CONFIDENTIAL'
      OAUTH_REDIRECT_URI = 'https://apps.<region>.jitterbit.com/design-studio/api/v1/oauth/authcode'
      OAUTH_ISSUE_REFRESH_TOKENS = TRUE
      OAUTH_REFRESH_TOKEN_VALIDITY = 86400
      BLOCKED_ROLES_LIST = ('SYSADMIN')
      OAUTH_CLIENT_RSA_PUBLIC_KEY ='ABCjkl123...';
    
    • Defina OAUTH_REDIRECT_URI para um dos seguintes URLs (dependendo da região da sua organização):

      Região URL
      APAC https://apps.apac-southeast.jitterbit.com/design-studio/api/v1/oauth/authcode
      EMEA https://apps.emea-west.jitterbit.com/design-studio/api/v1/oauth/authcode
      NA https://apps.na-east.jitterbit.com/design-studio/api/v1/oauth/authcode
    • Para informações sobre pares de chaves RSA e como obter uma chave pública, consulte a documentação do Snowflake Autenticação por pares de chaves e rotação de pares de chaves.

Para mais informações sobre o comando CREATE SECURITY INTEGRATION, consulte a documentação do Snowflake CREATE SECURITY INTEGRATION (Snowflake OAuth).

  1. Para adicionar os papéis do Snowflake que devem interagir com esta integração, execute o seguinte comando. Este exemplo usa USERADMIN para configurar um registro de aplicativo no Console de Gerenciamento:

    Important

    Os papéis definidos na PRE_AUTHORIZED_ROLES_LIST não devem estar na BLOCKED_ROLES_LIST definida para a integração de segurança. Os papéis definidos na PRE_AUTHORIZED_ROLES_LIST também devem ter privilégios suficientes para interagir com os bancos de dados e esquemas necessários para que as atividades funcionem conforme o esperado.

    alter security integration jitterbit_app set PRE_AUTHORIZED_ROLES_LIST = ('USERADMIN')
    

    Para mais informações sobre papéis do Snowflake e controle de acesso, consulte a documentação do Snowflake Visão Geral do Controle de Acesso.

  2. Para obter o ID do cliente e o segredo do cliente necessários para um registro de aplicativo válido, execute o seguinte comando:

    select system$show_oauth_client_secrets('jitterbit_app');
    
  3. Para obter as URLs de autorização e de solicitação de token necessárias para um registro de aplicativo válido, execute o seguinte comando:

    DESCRIBE SECURITY INTEGRATION jitterbit_app;
    

    Os valores de OAUTH_AUTHORIZATION_ENDPOINT e OAUTH_TOKEN_ENDPOINT são, respectivamente, as URLs de autorização e de solicitação de token. Você precisa desses valores para configurar um registro de aplicativo no Console de Gerenciamento.

Configure um registro de aplicativo no Console de Gerenciamento

Siga estas etapas para configurar os valores necessários para um aplicativo privado do Console de Gerenciamento registro de aplicativo:

  1. Reúna as informações necessárias da integração de segurança OAuth do Snowflake configurada acima:

    • Papéis autorizados usados no passo 3. Por exemplo, USERADMIN.
    • ID do cliente e segredo do cliente obtidos no passo 4.
    • URL de autorização obtida no passo 5 (OAUTH_AUTHORIZATION_ENDPOINT).
    • URL do token de acesso e URL do token de atualização obtidas no passo 5 (OAUTH_TOKEN_ENDPOINT).
  2. Na configuração do registro do aplicativo, insira cada papel como um escopo em formato de código, por exemplo, session:role:USERADMIN.

  3. Defina a URL de Autenticação do aplicativo como <snowflake_account_url>/oauth/authorize. Este valor deve corresponder ao valor de OAUTH_AUTHORIZATION_ENDPOINT.

  4. Defina a URL do token de acesso e a URL do token de atualização do aplicativo como <snowflake_account_url>/oauth/token-request. Esses valores devem corresponder ao valor de OAUTH_TOKEN_ENDPOINT.

    Nota

    <snowflake_account_url> deve ser uma URL de conta Snowflake válida associada à sua conta. Por exemplo, https://example-account123.snowflakecomputing.com.

  5. Vá para Opções avançadas.

    Na aba Solicitação de autenticação sob Parâmetros, insira response_type como a Chave e code como o Valor. Em seguida, selecione URL de Solicitação no menu Enviar em.

Uma vez que o aplicativo privado esteja registrado na página Registros de Aplicativos, ele estará disponível para ser selecionado no menu Aplicativo OAuth na conexão do Snowflake.