Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso de Snowflake con Amazon Quick Sight
Snowflake es una plataforma de nube de datos de IA que ofrece soluciones de datos que van desde el almacenamiento y la colaboración de datos hasta la ciencia de datos y la IA generativa. Snowflake es un AWS
socio
Amazon Quick Sight ofrece dos formas de conectarse a Snowflake: con sus credenciales de inicio de sesión de Snowflake o con las credenciales de cliente. OAuth Utilice las siguientes secciones para obtener información sobre cada uno de estos métodos.
Temas
Creación de una conexión de fuente de datos de Quick Sight a Snowflake con credenciales de inicio de sesión
Utilice esta sección para aprender a crear una conexión entre Quick Sight y Snowflake con sus credenciales de inicio de sesión de Snowflake. Todo el tráfico entre Quick Sight y Snowflake se habilita mediante SSL.
Para crear una conexión entre Quick Sight y Snowflake
-
Abra la consola de Quick Suite
. -
En el panel de navegación izquierdo, elija Datos, luego elija Crear y, por último, elija Nuevo conjunto de datos.
-
Elija la tarjeta de origen de datos de Snowflake.
-
En la ventana emergente que aparece, ingrese la siguiente información:
-
En Nombre del origen de datos, ingrese un nombre descriptivo para la conexión del origen de datos de Snowflake. Como puede crear muchos conjuntos de datos a partir de una conexión a Snowflake, es mejor que el nombre sea sencillo.
-
En Tipo de conexión, elija el tipo de red que utiliza. Elija Red pública si sus datos se comparten públicamente. Elija VPC si sus datos se encuentran dentro de una VPC. Para configurar una conexión de VPC en Quick Sight, consulte. Administración de la conexión de VPC en Amazon Quick Suite
-
En Servidor de bases de datos, ingrese el nombre de host especificado en los detalles de conexión de Snowflake.
-
-
En Nombre de la base de datos y del almacén, ingrese los respectivos nombres del almacén y la base de datos de Snowflake que desea conectar.
-
En Nombre de usuario y Contraseña, ingrese sus credenciales de Snowflake.
Una vez que haya creado correctamente una conexión de fuente de datos entre sus cuentas de Quick Sight y Snowflake, puede empezar a Creación de conjuntos de datos contener datos de Snowflake.
Crear una conexión de fuente de datos de Quick Sight a Snowflake con credenciales de cliente OAuth
Puede usar las credenciales de OAuth cliente para conectar su cuenta de Quick Sight con Snowflake a través de Quick Sight. APIs OAuthes un protocolo de autorización estándar que se utiliza a menudo para aplicaciones que tienen requisitos de seguridad avanzados. Cuando se conecta a Snowflake con credenciales de OAuth cliente, puede crear conjuntos de datos que contengan datos de Snowflake con Quick Sight APIs y en la interfaz de usuario de Quick Sight. Para obtener más información sobre cómo configurar OAuth en Snowflake, consulte Snowflake OAuth overview
Quick Sight admite el tipo de subvención. client credentials OAuth OAuthlas credenciales del cliente se utilizan para obtener un token de acceso para machine-to-machine la comunicación. Este método es adecuado para situaciones en las que un cliente necesita acceder a los recursos que están alojados en un servidor sin la participación de un usuario.
En el flujo de credenciales de cliente de OAuth 2.0, hay varios mecanismos de autenticación de clientes que se pueden utilizar para autenticar la aplicación cliente con el servidor de autorización. Quick Sight admite las credenciales de cliente basadas en OAuth Snowflake para los dos mecanismos siguientes:
-
Token (OAuth basado en secretos del cliente): el mecanismo de autenticación del cliente basado en secretos se utiliza con las credenciales de cliente para conceder el flujo a fin de autenticarse con el servidor de autorización. Este esquema de autenticación requiere que el
client_idy elclient_secretde la aplicación de cliente de OAuth se almacenen en Secrets Manager. -
X509 (OAuth basado en JWT de clave privada del cliente): la solución basada en claves del certificado X509 proporciona una capa de seguridad adicional al mecanismo de OAuth con certificados de cliente que se utilizan para autenticar en lugar de secretos de cliente. Este método lo suelen utilizar los clientes privados para autenticarse en el servidor de autorización con una fuerte confianza entre los dos servicios.
Quick Sight ha validado OAuth las conexiones con los siguientes proveedores de identidad:
-
OKTA
-
PingFederate
Almacenamiento de credenciales de OAuth en Secrets Manager
OAuth las credenciales de los clientes están pensadas para casos de machine-to-machine uso y no están diseñadas para ser interactivas. Para crear una conexión de origen de datos entre Quick Sight y Snowflake, cree un nuevo secreto en Secrets Manager que contenga sus credenciales para la aplicación cliente. OAuth El ARN secreto que se crea con el nuevo secreto se puede usar para crear conjuntos de datos que contengan datos de Snowflake en Quick Sight. Para obtener más información sobre el uso de las claves de Secrets Manager en Quick Sight, consulteUso de AWS Secrets Manager secretos en lugar de credenciales de bases de datos en Quick Suite.
Las credenciales que debe almacenar en Secrets Manager vienen determinadas por el mecanismo de OAuth que utilice. Los siguientes key/value pares son necesarios para los secretos basados en el X509OAuth:
-
username: el nombre de usuario de la cuenta de Snowflake que se utilizará al conectarse a Snowflake -
client_id: el ID de cliente de OAuth -
client_private_key: la clave privada del cliente de OAuth -
client_public_key: la clave pública del certificado del cliente de OAuth y su algoritmo cifrado (por ejemplo,{"alg": "RS256", "kid", "cert_kid"})
Los siguientes key/value pares son necesarios para los secretos basados en fichas: OAuth
-
username: el nombre de usuario de la cuenta de Snowflake que se utilizará al conectarse a Snowflake -
client_id: el ID de cliente de OAuth -
client_secret: el secreto del cliente de OAuth
Crear una OAuth conexión con Snowflake con Quick Sight APIs
Una vez que haya creado un secreto en Secrets Manager que contenga sus OAuth credenciales de Snowflake y haya conectado su cuenta de Quick Suite a Secrets Manager, podrá establecer una conexión de origen de datos entre Quick Sight y Snowflake con Quick Sight y el SDK. APIs En el siguiente ejemplo, se crea una conexión a una fuente de datos de Snowflake con credenciales de cliente simbólicas. OAuth
{ "AwsAccountId": "AWSACCOUNTID", "DataSourceId": "UNIQUEDATASOURCEID", "Name": "NAME", "Type": "SNOWFLAKE", "DataSourceParameters": { "SnowflakeParameters": { "Host": "HOSTNAME", "Database": "DATABASENAME", "Warehouse": "WAREHOUSENAME", "AuthenticationType": "TOKEN", "DatabaseAccessControlRole": "snowflake-db-access-role-name", "OAuthParameters": { "TokenProviderUrl": "oauth-access-token-endpoint", "OAuthScope": "oauth-scope", "IdentityProviderResourceUri" : "resource-uri", "IdentityProviderVpcConnectionProperties" : { "VpcConnectionArn": "IdP-VPC-connection-ARN" } } }, "VpcConnectionProperties": { "VpcConnectionArn": "VPC-connection-ARN-for-Snowflake" } "Credentials": { "SecretArn": "oauth-client-secret-ARN" } }
Para obtener más información sobre el funcionamiento de la CreateDatasource API, consulte. CreateDataSource
Una vez que se haya establecido la conexión entre Quick Sight y Snowflake y se haya creado una fuente de datos con Quick Sight APIs o el SDK, la nueva fuente de datos se mostrará en Quick Sight. Los autores de Quick Sight pueden usar esta fuente de datos para crear conjuntos de datos que contengan datos de Snowflake. Las tablas se muestran en función del rol utilizado en el parámetro DatabaseAccessControlRole que se transfiere en una llamada a la API CreateDataSource. Si este parámetro no está definido al crear la conexión al origen de datos, se utiliza el rol predeterminado de Snowflake.
Una vez que haya creado correctamente una conexión de fuente de datos entre sus cuentas de Quick Sight y Snowflake, puede empezar a Creación de conjuntos de datos contener datos de Snowflake.