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:
-
En la interfaz de Snowflake, navega hasta el CLI de Snowflake.
-
Para crear la integración de seguridad, ejecuta el siguiente comando con los parámetros
OAUTH_REDIRECT_URI
yOAUTH_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).
-
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 laBLOCKED_ROLES_LIST
definida para la integración de seguridad. Los roles establecidos en laPRE_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.
-
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');
-
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
yOAUTH_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:
-
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
).
- Roles autorizados utilizados en el paso 3. Por ejemplo,
-
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
. -
Establece la URL de autenticación de la aplicación como
<snowflake_account_url>/oauth/authorize
. Este valor debe coincidir con el valor deOAUTH_AUTHORIZATION_ENDPOINT
. -
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 deOAUTH_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
. -
Ve a Opciones avanzadas.
En la pestaña de solicitud de autenticación bajo Parámetros, ingresa
response_type
como la Clave ycode
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.