

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Usare Snowflake con Amazon Quick Sight
<a name="connecting-to-snowflake"></a>

Snowflake è una piattaforma cloud di dati IA che fornisce soluzioni di dati dal data warehousing e collaborazione al data science e all'IA generativa. Snowflake è un [AWS partner](https://partners.amazonaws.com/partners/001E000000d8qQcIAI/Snowflake) con diversi AWS accreditamenti che includono competenze AWS ISV in intelligenza artificiale generativa, Machine Learning, dati e analisi e vendita al dettaglio.

Amazon Quick Sight offre due modi per connettersi a Snowflake: con le credenziali di accesso Snowflake o con le credenziali del client. OAuth Per ulteriori informazioni su questi metodi di connessione, utilizza le seguenti sezioni.

**Topics**
+ [Creazione di una connessione alla sorgente dati Quick Sight a Snowflake con credenziali di accesso](#create-connection-to-snowflake)
+ [Creazione di una connessione alla sorgente dati Quick Sight a Snowflake con le credenziali del client OAuth](#create-connection-to-snowflake-oauth-credentials)

## Creazione di una connessione alla sorgente dati Quick Sight a Snowflake con credenziali di accesso
<a name="create-connection-to-snowflake"></a>

 Utilizza questa sezione per scoprire come creare una connessione tra Quick Sight e Snowflake con le credenziali di accesso Snowflake. Tutto il traffico tra Quick Sight e Snowflake è abilitato tramite SSL.

**Per creare una connessione tra Quick Sight e Snowflake**

1. Apri la console [Quick](https://quicksight.aws.amazon.com/).

1. Dal riquadro di navigazione a sinistra, scegli **Dati**, quindi scegli **Crea**, quindi scegli **Nuovo set** di dati.

1. Scegli la scheda dell'origine dati **Snowflake**.

1. Nel popup che appare, immetti le seguenti informazioni:

   1. Per **Nome dell'origine dati**, immetti un nome descrittivo per la connessione all'origine dati Snowflake. Poiché puoi creare molti set di dati da una connessione a Snowflake, è preferibile assegnare un nome semplice.

   1. Per **Tipo di connessione**, seleziona il tipo di rete che stai utilizzando. Scegli **Rete pubblica** se i dati sono condivisi pubblicamente. Scegli **VPC** se i tuoi dati si trovano all'interno di un VPC. Per configurare una connessione VPC in Quick Sight, vedere. [Gestione della connessione VPC in Amazon Quick](vpc-creating-a-connection-in-quicksight.md)

   1. Per **Server di database**, inserisci il nome host specificato nei dettagli della connessione Starburst.

1. Per **Nome del database e warehouse**, inserisci il rispettivo database e warehouse Snowflake a cui desideri connetterti.

1. Per **Nome utente** e **Password**, inserisci le tue credenziali Snowflake.

Dopo aver creato con successo una connessione a una sorgente dati tra gli account Quick Sight e Snowflake, puoi iniziare a [Creazione di set di dati](creating-data-sets.md) contenere dati Snowflake.

## Creazione di una connessione alla sorgente dati Quick Sight a Snowflake con le credenziali del client OAuth
<a name="create-connection-to-snowflake-oauth-credentials"></a>

[Puoi utilizzare le credenziali OAuth del client per connettere il tuo account Quick Sight con Snowflake tramite Quick Sight. APIs](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateDataSource.html) *OAuth*è un protocollo di autorizzazione standard che viene spesso utilizzato per applicazioni con requisiti di sicurezza avanzati. Quando ti connetti a Snowflake con le credenziali OAuth del client, puoi creare set di dati che contengono dati Snowflake con Quick Sight e nell'interfaccia utente Quick Sight APIs . Per ulteriori informazioni sulla configurazione di OAuth in Snowflake, consulta la [panoramica di Snowflake OAuth](https://docs.snowflake.com/en/user-guide/oauth-snowflake-overview).

Quick Sight supporta il tipo di concessione. `client credentials` OAuth OAuthle credenziali del client vengono utilizzate per ottenere un token di accesso per la machine-to-machine comunicazione. Questo metodo è adatto per scenari in cui un client deve accedere alle risorse ospitate su un server senza il coinvolgimento di un utente.

Nel flusso delle credenziali client di OAuth 2.0, esistono diversi meccanismi di autenticazione client che possono essere utilizzati per autenticare l'applicazione client con il server di autorizzazione. Quick Sight supporta le credenziali client basate su OAuth Snowflake per i seguenti due meccanismi:
+ **Token (OAuth basato su segreti del client)**: il meccanismo di autenticazione client basato su segreti viene utilizzato con le credenziali del client per concedere il flusso necessario all'autenticazione con il server di autorizzazione. Questo schema di autenticazione richiede che `client_id` e `client_secret` dell'app client OAuth siano archiviati in Secrets Manager.
+ **X509 (OAuth basato su JWT della chiave privata del client)**: la soluzione basata su chiavi di certificato X509 fornisce un ulteriore livello di sicurezza al meccanismo OAuth con certificati client che vengono utilizzati per l'autenticazione anziché i segreti del client. Questo metodo viene utilizzato principalmente dai client privati che lo utilizzano per autenticarsi con il server di autorizzazione con un forte rapporto di fiducia tra i due servizi.

Quick Sight ha convalidato OAuth le connessioni con i seguenti provider di identità:
+ OKTA
+ PingFederate

### Archiviazione delle credenziali OAuth in Secrets Manager
<a name="create-connection-to-snowflake-oauth-store-credentials"></a>

OAuth le credenziali del client sono pensate per casi machine-to-machine d'uso e non sono progettate per essere interattive. Per creare una connessione all'origine dati tra Quick Sight e Snowflake, crea un nuovo segreto in Secrets Manager che contenga le credenziali per l'app client. OAuth L'ARN segreto creato con il nuovo segreto può essere utilizzato per creare set di dati che contengono dati Snowflake in Quick Sight. Per ulteriori informazioni sull'utilizzo delle chiavi di Secrets Manager in Quick Sight, vedere[Utilizzo Gestione dei segreti AWS dei segreti anziché delle credenziali del database in Quick](secrets-manager-integration.md).

Le credenziali da archiviare in Secrets Manager sono determinate dal meccanismo OAuth utilizzato. Le seguenti key/value coppie sono necessarie per i segreti basati su X509OAuth:
+ `username`: il nome utente dell'account Snowflake da utilizzare per la connessione a Snowflake
+ `client_id`: l'ID client OAuth
+ `client_private_key`: la chiave privata del client OAuth
+ `client_public_key`: la chiave pubblica del certificato client OAuth e il relativo algoritmo crittografato (ad esempio, `{"alg": "RS256", "kid", "cert_kid"}`)

Le seguenti key/value coppie sono necessarie per i segreti basati su token: OAuth
+ `username`: il nome utente dell'account Snowflake da utilizzare per la connessione a Snowflake
+ `client_id`: l'ID client OAuth
+ `client_secret`: il segreto del client OAuth

### Creazione di una OAuth connessione Snowflake con Quick Sight APIs
<a name="create-connection-to-snowflake-oauth-example"></a>

Dopo aver creato un segreto in Secrets Manager contenente le tue OAuth credenziali Snowflake e aver collegato il tuo account Quick a Secrets Manager, puoi stabilire una connessione all'origine dati tra Quick Sight e Snowflake con Quick Sight e SDK. APIs L'esempio seguente crea una connessione a una fonte di dati Snowflake utilizzando le credenziali del token client. 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"
    }
}
```

Per ulteriori informazioni sul funzionamento dell' CreateDatasource API, vedere. [CreateDataSource](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_CreateDataSource.html)

Una volta stabilita la connessione tra Quick Sight e Snowflake e creata un'origine dati con Quick Sight APIs o SDK, la nuova origine dati viene visualizzata in Quick Sight. Gli autori di Quick Sight possono utilizzare questa fonte di dati per creare set di dati contenenti dati Snowflake. Le tabelle vengono visualizzate in base al ruolo utilizzato nel parametro `DatabaseAccessControlRole` passato in una chiamata API `CreateDataSource`. Se questo parametro non è definito al momento della creazione della connessione dell'origine dati, viene utilizzato il ruolo Snowflake predefinito.

Dopo aver creato con successo una connessione a una sorgente dati tra gli account Quick Sight e Snowflake, puoi iniziare a [Creazione di set di dati](creating-data-sets.md) contenere dati Snowflake.