Saltar al contenido

Requisitos previos de OAuth 2.0 de 3 patas (3LO) para el conector de Snowflake en Integration Studio

Introducción

Estos son los requisitos previos para usar OAuth 2.0 de 3 patas (3LO) con el conector de Snowflake. Primero crea y configura una integración de seguridad OAuth de Snowflake y luego configura un registro de aplicación en la Consola de Administración con la integración de seguridad.

Nota

Se requiere la versión 10.83 / 11.21 o posterior del agente para usar la autenticación OAuth 2.0 de 3 patas.

Crear y configurar una integración de seguridad OAuth de Snowflake

Sigue estos pasos para crear y configurar una integración de seguridad OAuth de Snowflake:

  1. En la interfaz de Snowflake, navega hasta el CLI de Snowflake.

  2. Para crear la integración de seguridad, ejecuta el siguiente comando con los parámetros OAUTH_REDIRECT_URI y OAUTH_CLIENT_RSA_PUBLIC_KEY modificados según tu implementación:

    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...';
    
    • Establece OAUTH_REDIRECT_URI en una de las siguientes URL (dependiendo de la región de tu organización):

      Región 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 obtener información sobre pares de claves RSA y cómo obtener una clave pública, consulta la documentación de Snowflake sobre Autenticación por pares de claves y rotación de pares de claves.

Para obtener más información sobre el comando CREATE SECURITY INTEGRATION, consulta la documentación de Snowflake CREATE SECURITY INTEGRATION (Snowflake OAuth).

  1. Para agregar los roles de Snowflake que se espera que interactúen con esta integración, ejecuta el siguiente comando. Este ejemplo utiliza USERADMIN para configurar un registro de aplicación en la Consola de Administración:

    Important

    Los roles establecidos en la PRE_AUTHORIZED_ROLES_LIST no deben estar en la BLOCKED_ROLES_LIST definida para la integración de seguridad. Los roles establecidos en la PRE_AUTHORIZED_ROLES_LIST también deben tener suficientes privilegios para interactuar con las bases de datos y esquemas necesarios para que las actividades funcionen como se espera.

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

    Para obtener más información sobre los roles de Snowflake y el control de acceso, consulta la Descripción general del control de acceso de Snowflake.

  2. Para obtener el ID de cliente y el secreto de cliente requeridos para un registro de aplicación válido, ejecuta el siguiente comando:

    select system$show_oauth_client_secrets('jitterbit_app');
    
  3. Para obtener las URL de autorización y de solicitud de token requeridas para un registro de aplicación válido, ejecuta el siguiente comando:

    DESCRIBE SECURITY INTEGRATION jitterbit_app;
    

    Los valores de OAUTH_AUTHORIZATION_ENDPOINT y OAUTH_TOKEN_ENDPOINT son las URL de autorización y de solicitud de token, respectivamente. Necesitas estos valores para configurar un registro de aplicación en la Consola de Administración.

Configurar un registro de aplicación en la Consola de Administración

Sigue estos pasos para configurar los valores requeridos para una aplicación privada de la Consola de Administración registro de aplicación:

  1. Reúne la información requerida de la integración de seguridad OAuth de Snowflake configurada arriba:

    • Roles autorizados utilizados en el paso 3. Por ejemplo, USERADMIN.
    • ID de cliente y secreto de cliente obtenidos en el paso 4.
    • URL de autorización obtenida en el paso 5 (OAUTH_AUTHORIZATION_ENDPOINT).
    • URL del token de acceso y URL del token de actualización obtenidas en el paso 5 (OAUTH_TOKEN_ENDPOINT).
  2. En la configuración del registro de la aplicación, ingresa cada rol como un alcance en formato de código, por ejemplo, session:role:USERADMIN.

  3. Establece la URL de autenticación de la aplicación como <snowflake_account_url>/oauth/authorize. Este valor debe coincidir con el valor de OAUTH_AUTHORIZATION_ENDPOINT.

  4. Establece la URL del token de acceso y la URL del token de actualización de la aplicación como <snowflake_account_url>/oauth/token-request. Estos valores deben coincidir con el valor de OAUTH_TOKEN_ENDPOINT.

    Nota

    <snowflake_account_url> debe ser una URL de cuenta de Snowflake válida asociada con tu cuenta. Por ejemplo, https://example-account123.snowflakecomputing.com.

  5. Ve a Opciones avanzadas.

    En la pestaña de solicitud de autenticación bajo Parámetros, ingresa response_type como la Clave y code como el Valor. Luego selecciona URL de solicitud en el menú Enviar en.

Una vez que la aplicación privada esté registrada en la página de Registros de aplicaciones, estará disponible para ser seleccionada en el menú Aplicación OAuth en la conexión de Snowflake.