

 Amazon Redshift non supporterà più la creazione di nuovi Python UDFs a partire dalla Patch 198. Python esistente UDFs continuerà a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il [post del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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à.

# Opzioni per fornire credenziali IAM
Opzioni per fornire credenziali IAM

Per fornire credenziali IAM per una connessione ODBC o JDBC, scegli una delle opzioni seguenti.
+ **AWS profile** 

  Anziché fornire i valori delle credenziali come impostazioni JDBC o ODBC, puoi includere i valori in un profilo con nome. Per ulteriori informazioni, consulta [Utilizzo di un profilo di configurazione](#using-configuration-profile).
+ **Credenziali IAM**

  Fornisci valori per AccessKey ID e SecretAccessKey, facoltativamente, SessionToken sotto forma di impostazioni JDBC o ODBC. SessionToken è richiesto solo per un ruolo IAM con credenziali temporanee. Per ulteriori informazioni, consulta [Opzioni JDBC e ODBC per fornire credenziali IAM](#jdbc-options-for-providing-iam-credentials).
+ **Federazione del provider di identità** 

  Se utilizzi la federazione del provider di identità per consentire agli utenti di un provider di identità di eseguire l'autenticazione in Amazon Redshift, specifica il nome di un plug-in del provider di credenziali. Per ulteriori informazioni, consulta [Plugin del provider di credenziali](#using-credentials-provider-plugin).

  I driver JDBC e ODBC di Amazon Redshift includono plug-in per i seguenti provider di credenziali di federazione delle identità basate su SAML: 
  + Microsoft Active Identity Federation Services (AD FS)
  + PingOne
  + Okta
  + Microsoft Azure Active Directory (AD)

  Puoi fornire il nome di plug-in e i valori correlati come impostazioni JDBC o ODBC oppure utilizzando un profilo. Per ulteriori informazioni, consulta [Opzioni per la configurazione del driver JDBC versione 2.x](jdbc20-configuration-options.md). 

Per ulteriori informazioni, consulta [Fase 5: configurazione di una connessione JDBC o ODBC per utilizzare credenziali IAM](generating-iam-credentials-steps.md#generating-iam-credentials-configure-jdbc-odbc).

## Utilizzo di un profilo di configurazione
Utilizzo di un profilo di configurazione

Puoi fornire le opzioni e `GetClusterCredentials` le opzioni delle credenziali IAM come impostazioni nei profili denominati nel tuo AWS file di configurazione. Per specificare il nome di profilo, utilizzare l'opzione Profile JDBC. La configurazione è archiviata in un file denominato `config` o `credentials` in una cartella `.aws` della tua home directory.

Per un plug-in di provider di credenziali basate su SAML incluso con un driver JDBC o ODBC di Amazon Redshift, puoi utilizzare le impostazioni descritte in precedenza in [Plugin del provider di credenziali](#using-credentials-provider-plugin). Se `plugin_name` non viene utilizzato, le altre opzioni vengono ignorate.

L'esempio seguente mostra il file \$1/.aws/credentials con due profili:

```
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

[user2]
aws_access_key_id=AKIAI44QH8DHBEXAMPLE
aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
session_token=AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGd
QrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU
9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz
+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
```

Per utilizzare le credenziali per l'esempio `user2`, specifica `Profile=user2` nell'URL JDBC.

Per ulteriori informazioni sull'utilizzo dei profili, consulta [Configurazione e impostazioni dei file di credenziali nella Guida](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) per l'* AWS Command Line Interface utente*. 

Per ulteriori informazioni sull'utilizzo dei profili per il driver JDBC, consulta [Specifica di profili](jdbc20-configure-authentication-ssl.md#jdbc20-aws-credentials-profiles). 

Per ulteriori informazioni sull'utilizzo dei profili per il driver ODBC, consulta [Metodi di autenticazione](odbc20-authentication-ssl.md). 

## Opzioni JDBC e ODBC per fornire credenziali IAM
Opzioni JDBC e ODBC per fornire credenziali IAM

La tabella seguente elenca le opzioni JDBC e ODBC per fornire credenziali IAM.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/redshift/latest/mgmt/options-for-providing-iam-credentials.html)

## Opzioni JDBC e ODBC per la creazione delle credenziali dell’utente di database


Per creare credenziali utente di database con il driver JDBC o ODBC di Amazon Redshift, devi fornire il nome utente di database come opzione JDBC o ODBC. Facoltativamente, il driver può creare un nuovo utente di database se questo non esiste e puoi specificare un elenco di gruppi di utenti di database a cui l'utente viene aggiunto all'accesso. 

Se utilizzi un provider di identità (IdP), collabora con l'amministratore IdP per determinare i valori corretti per queste opzioni. L'amministratore IdP può anche configurare l'IdP per fornire tali opzioni, nel qual caso non devi fornirle come opzioni JDBC o ODBC. Per ulteriori informazioni, consulta [Fase 2: configurazione di asserzioni SAML per l'IdP](generating-iam-credentials-steps.md#configuring-saml-assertions). 

**Nota**  
Se si utilizza una variabile di policy IAM `${redshift:DbUser}`, come descritto in [Politiche relative alle risorse per GetClusterCredentials](redshift-iam-access-control-identity-based.md#redshift-policy-resources.getclustercredentials-resources), il valore per `DbUser` è sostituito con il valore recuperato dal contesto della richiesta dell'operazione API. I driver Amazon Redshift utilizzano il valore per la variabile `DbUser` fornito dalla connessione URL, piuttosto che il valore fornito come attributo SAML.   
Per proteggere questa configurazione, consigliamo di utilizzare una condizione nella policy IAM per convalidare il valore `DbUser` con il codice `RoleSessionName`. È possibile trovare esempi di come impostare una condizione utilizzando una policy IAM in [Esempio 8: policy IAM per l'utilizzo GetClusterCredentials](redshift-iam-access-control-identity-based.md#redshift-policy-examples-getclustercredentials).

La tabella seguente elenca le opzioni per la creazione di credenziali utente di database. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/redshift/latest/mgmt/options-for-providing-iam-credentials.html)

## Plugin del provider di credenziali


Amazon Redshift utilizza plug-in di provider di credenziali per l'autenticazione Single Sign-On.

Per supportare l'autenticazione Single Sign-On, Amazon Redshift fornisce il plug-in Azure AD per Microsoft Azure Active Directory. Per informazioni su come configurare questo plugin, consultare [Configurazione dell’autenticazione single sign-on JDBC oppure ODBC](setup-azure-ad-identity-provider.md).

### Autenticazione a più fattori


Per supportare autenticazione a più fattori (MFA), Amazon Redshift fornisce plug-in basati su browser. Usa il plug-in SAML del browser per Okta e il plug-in Azure AD del browser per Microsoft Azure Active Directory. PingOne

Con il plug-in SAML del browser, OAuth l'autenticazione procede come segue:

![\[OAuth flussi di lavoro su come il plug-in, il server locale, il browser Web e l'endpoint interagiscono per autenticare un utente con l'autenticazione SAML.\]](http://docs.aws.amazon.com/it_it/redshift/latest/mgmt/images/BrowserSAML_plugin.png)


1. Un utente tenta di eseguire l'accesso.

1. Il plugin avvia un server locale per ascoltare le connessioni in entrata sul localhost.

1. Il plug-in avvia un browser Web per richiedere una risposta SAML su HTTPS dall'endpoint del provider di identità federate dell'URL di accesso Single Sign-On specificato.

1. Il browser Web segue il collegamento e invia all'utente una richiesta di immissione delle credenziali.

1. Dopo che l'utente esegue l'autenticazione e concede l'autorizzazione, l'endpoint del provider di identità federate restituisce una risposta SAML su HTTPS all'URI indicato da `redirect_uri`.

1. Il browser Web sposta il messaggio di risposta con la risposta SAML nel `redirect_uri` indicato.

1. Il server locale accetta la connessione in entrata, il plugin recupera la risposta SAML e la invia ad Amazon Redshift .

Con il plug-in Azure AD del browser, il flusso di autenticazione SAML è il seguente:

![\[Flussi di lavoro di Azure su come il plugin, il server locale, il browser web e l’endpoint interagiscono per autenticare un utente con l’autenticazione SAML.\]](http://docs.aws.amazon.com/it_it/redshift/latest/mgmt/images/BrowserAzure_plugin.png)


1. Un utente tenta di eseguire l'accesso.

1. Il plugin avvia un server locale per ascoltare le connessioni in entrata sul localhost.

1. Il plug-in avvia un browser Web per richiedere un codice di autorizzazione dall'endpoint `oauth2/authorize` di Azure AD.

1. Il browser Web segue il collegamento generato su HTTPS e richiede all'utente di immettere le credenziali. Il collegamento viene generato utilizzando le proprietà di configurazione, ad esempio tenant e client\$1id.

1. Dopo che l'utente esegue l'autenticazione e concede l'autorizzazione, l'endpoint `oauth2/authorize` di Azure AD restituisce e invia una risposta tramite HTTPS con il codice di autorizzazione a `redirect_uri` indicato.

1. Il browser Web sposta il messaggio di risposta con la risposta SAML nel `redirect_uri` indicato.

1. Il server locale accetta la connessione in ingresso e il plug-in richiede e recupera il codice di autorizzazione e invia una richiesta POST all'endpoint `oauth2/token` di Azure AD.

1. L'endpoint `oauth2/token` di Azure AD restituisce una risposta con un token di accesso al `redirect_uri` indicato.

1. Il plug-in recupera la risposta SAML e la invia ad Amazon Redshift.

Vedere le seguenti sezioni:
+ Active Directory Federation Services (AD FS)

  Per ulteriori informazioni, consulta [Configurazione dell’autenticazione single sign-on JDBC oppure ODBC](setup-azure-ad-identity-provider.md).
+ PingOne (Ping) 

  Il ping è supportato solo con l'adattatore PingOne IdP predeterminato che utilizza l'autenticazione Forms. 

  Per ulteriori informazioni, consulta [Configurazione dell’autenticazione single sign-on JDBC oppure ODBC](setup-azure-ad-identity-provider.md).
+ Okta 

  Okta è supportato solo per l'applicazione fornita da Okta utilizzata con la Console di gestione AWS. 

  Per ulteriori informazioni, consulta [Configurazione dell’autenticazione single sign-on JDBC oppure ODBC](setup-azure-ad-identity-provider.md).
+ Microsoft Azure Active Directory

  Per ulteriori informazioni, consulta [Configurazione dell’autenticazione single sign-on JDBC oppure ODBC](setup-azure-ad-identity-provider.md).

### Opzioni del plugin


Per usare un plugin per il provider di credenziali basato su SAML, specificare le seguenti opzioni usando le opzioni JDBC o ODBC o in un profilo con nome. Se `plugin_name` non è specificato, le altre opzioni vengono ignorate. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/redshift/latest/mgmt/options-for-providing-iam-credentials.html)

# Generazione di credenziali di database per un’identità IAM mediante la CLI o l’API di Amazon Redshift
Generazione di credenziali di database per un’identità IAM

Per generare in modo programmatico credenziali utente temporanee del database, Amazon Redshift fornisce il [get-cluster-credentials](https://docs.aws.amazon.com/cli/latest/reference/redshift/get-cluster-credentials.html)comando per il funzionamento AWS Command Line Interface (AWS CLI) e dell'API. [GetClusterCredentials](https://docs.aws.amazon.com/redshift/latest/APIReference/API_GetClusterCredentials.html) In alternativa, puoi configurare il tuo client SQL con i driver JDBC o ODBC di Amazon Redshift, che gestiscono il processo di chiamata dell'operazione `GetClusterCredentials`, di recupero delle credenziali utente di database e di connessione tra il client SQL e il database Amazon Redshift. Per ulteriori informazioni, consulta [Opzioni JDBC e ODBC per la creazione delle credenziali dell’utente di database](options-for-providing-iam-credentials.md#jdbc-and-odbc-options-for-database-credentials).

**Nota**  
Consigliamo di utilizzare i driver JDBC o ODBC di Amazon Redshift per generare credenziali utente di database.

In questa sezione, puoi trovare i passaggi per richiamare a livello di codice l'`GetClusterCredentials`operazione o il get-cluster-credentials comando, recuperare le credenziali utente del database e connetterti al database.

**Per generare e utilizzare credenziali di database temporanee**

1. Crea o modifica un utente o un ruolo con le autorizzazioni necessarie. Per ulteriori informazioni sulle autorizzazioni IAM, consultare [Fase 3: Creare un ruolo IAM con le autorizzazioni per chiamare IAM o GetClusterCredentialsWith GetClusterCredentials](generating-iam-credentials-steps.md#generating-iam-credentials-role-permissions).

1. Come utente o ruolo autorizzato nel passaggio precedente, esegui il comando get-cluster-credentials CLI o chiama l'operazione `GetClusterCredentials` API e fornisci i seguenti valori:
   + **Identificatore del cluster**: il nome del cluster contenente il database.
   + **Nome utente del database**: il nome di un utente del database esistente o nuovo.
     + Se l'utente non esiste nel database ed AutoCreate è vero, viene creato un nuovo utente con PASSWORD disattivata.
     +  Se l'utente non esiste ed AutoCreate è falso, la richiesta ha esito negativo. 
     + Per questo esempio, il nome utente di database è `temp_creds_user`. 
   +  **Autocreate**: (facoltativo) crea un nuovo utente se il nome utente di database non esiste.
   +  **Nome database**: il nome del database a cui l'utente è autorizzato ad accedere. Se il nome di database non è specificato, l'utente può accedere a qualsiasi database del cluster.
   +  **Gruppi di database**: (facoltativo) un elenco di gruppi di utenti di database esistenti. Se l'accesso va a buon fine, l'utente di database viene aggiunto al gruppo di utenti specificato. Se non viene specificato alcun gruppo, l'utente dispone solo di autorizzazioni PUBLIC. I nomi dei gruppi di utenti devono corrispondere alle risorse dbgroup ARNs specificate nella policy IAM allegata all'utente o al ruolo. 
   +  **Tempo scadenza**: (facoltativo) il tempo, in secondi, fino alla scadenza delle credenziali temporanee. È possibile specificare un valore compreso tra 900 secondi (15 minuti) e 3600 secondi (60 minuti). Il valore predefinito è 900 secondi.

1. Amazon Redshift verifica che l'utente disponga dell'autorizzazione per chiamare l'operazione `GetClusterCredentials` con le risorse specificate. 

1. Amazon Redshift restituisce una password temporanea e il nome utente di database.

   L'esempio seguente utilizza la CLI di Amazon Redshift per generare credenziali di database temporanee per un utente esistente denominato `temp_creds_user`.

   ```
   aws redshift get-cluster-credentials --cluster-identifier examplecluster --db-user temp_creds_user --db-name exampledb --duration-seconds 3600
   ```

   Il risultato è illustrato di seguito.

   ```
   {
     "DbUser": "IAM:temp_creds_user", 
     "Expiration": "2016-12-08T21:12:53Z", 
     "DbPassword": "EXAMPLEjArE3hcnQj8zt4XQj9Xtma8oxYEM8OyxpDHwXVPyJYBDm/gqX2Eeaq6P3DgTzgPg=="
   }
   ```

   L'esempio seguente utilizza la CLI di Amazon Redshift con autocreate per generare credenziali di database temporanee per un nuovo utente e per aggiungere l'utente al gruppo `example_group`.

   ```
   aws redshift get-cluster-credentials --cluster-identifier examplecluster --db-user temp_creds_user --auto-create --db-name exampledb --db-groups example_group --duration-seconds 3600
   ```

   Il risultato è illustrato di seguito.

   ```
   {
     "DbUser": "IAMA:temp_creds_user:example_group", 
     "Expiration": "2016-12-08T21:12:53Z", 
     "DbPassword": "EXAMPLEjArE3hcnQj8zt4XQj9Xtma8oxYEM8OyxpDHwXVPyJYBDm/gqX2Eeaq6P3DgTzgPg=="
   }
   ```

1. Stabilisci una connessione di autenticazione Secure Sockets Layer (SSL) con il cluster Amazon Redshift e invia una richiesta di accesso con il nome utente e la password contenuti nella risposta `GetClusterCredentials`. Includere il prefisso `IAM:` o `IAMA:` con il nome utente, ad esempio `IAM:temp_creds_user` o `IAMA:temp_creds_user`.
**Importante**  
Configurare il client SQL per richiedere SSL. Se non si esegue questa operazione e il client SQL tenta automaticamente di connettersi con SSL, può utilizzare di nuovo una connessione non SSL in caso di problemi. In tal caso, il primo tentativo di connessione può non riuscire in quanto le credenziali sono scadute o invalide e il secondo non riesce perché la connessione non è SSL. Se ciò si verifica, è possibile non vedere il primo messaggio di errore. Per ulteriori informazioni sulla connessione al cluster mediante SSL, consultare [Configurazione delle opzioni di sicurezza per le connessioni](connecting-ssl-support.md).

1. Se la connessione non utilizza SSL, il tentativo di connessione non riesce. 

1. Il cluster invia una richiesta `authentication` al client SQL. 

1. Il client SQL invia quindi la password temporanea al cluster. 

1. Se la password è valida e non è scaduta, il cluster completa la connessione. 

# Configurazione dell’autenticazione single sign-on JDBC oppure ODBC


Puoi utilizzare provider di identità esterni (IdPs) per autenticare e autorizzare gli utenti ad accedere al tuo cluster Amazon Redshift, semplificando la gestione degli utenti e migliorando la sicurezza. Ciò consente la gestione centralizzata degli utenti, il controllo degli accessi basato sul ruolo e le funzionalità di audit su più servizi. I casi d’uso comuni includono la semplificazione dell’autenticazione per diversi gruppi di utenti, l’applicazione di policy di accesso coerenti e il rispetto dei requisiti normativi. 

Nelle pagine seguenti è illustrata la configurazione del gestore dell’identità digitale con il cluster Redshift. *Per ulteriori informazioni sulla configurazione AWS come fornitore di servizi per l'IdP, [consulta Configuring Your SAML 2.0 IdP with Relying Party Trust e Adding Claims nella IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_relying-party.html#saml_relying-party) User Guide.*

# AD FS


In questo tutorial viene illustrato come puoi utilizzare AD FS come gestore dell’identità digitale per accedere al cluster Amazon Redshift.

## Passaggio 1: configura AD FS e il tuo account in modo che si fidino l'uno dell'altro AWS


 Nella procedura seguente viene descritto come configurare una relazione di attendibilità. 

1. Crea o utilizza un cluster Amazon Redshift esistente a cui possono connettersi gli utenti di AD FS. Per configurare la connessione, sono necessarie alcune proprietà di questo cluster, ad esempio l'identificatore del cluster. Per ulteriori informazioni, consulta [Creazione di un cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html).

1. Configura AD FS per controllare l'accesso di Amazon Redshift nella Console di gestione Microsoft: 

   1. Scegliere **ADFS 2.0**, quindi selezionare **Add Relying Party Trust (Aggiungi relazione di trust)**. Nella pagina **Add Relying Party Trust Wizard (Aggiunta guidata relazione di trust)**, scegliere **Start (Avvia)**.

   1. Nella pagina **Select Data Source (Seleziona origine dati)**, scegliere **Import data about the relying party published online or on a local network (Importa dati sul relying party pubblicati online o in una rete locale)**.

   1. Per **Federation metadata address (host name or URL) (Indirizzo dei metadati della federazione (nome host o URL))**, immettere **https://signin.aws.amazon.com/saml-metadata.xml**. Il file XML di metadati è un documento di metadati SAML standard che viene descritto AWS come relying party.

   1. Nella pagina **Specify Display Name (Specificare nome visualizzato)**, immettere un valore per **Display name (Nome visualizzato)**. 

   1. Nella pagina **Choose Issuance Authorization Rules (Scegli regole di autorizzazione di emissione)**, scegliere una regola di autorizzazione di emissione per consentire o rifiutare a tutti gli utenti l'accesso a questo relying party.

   1. Nella pagina **Ready to Add Trust (Pronto ad aggiungere trust)**, rivedere le impostazioni.

   1. Nella pagina **Finish (Termina)**, scegliere **Open the Edit Claim Rules dialog for this relying party trust when the wizard closes (Apri la finestra di dialogo Modifica regole di registrazione per questa relazione di trust quando si chiude la procedura guidata)**.

   1. Nel menu di scelta rapida, scegliere **Relying Party Trusts (Relazione di trust)**.

   1. Per il relying party, aprire il menu contestuale e scegliere **Edit Claim Rules (Modifica regole di registrazione)**. Nella pagina **Edit Claim Rules (Modifica regole di registrazione)**, scegliere **Add Rule (Aggiungi regola)**.

   1. Per il **modello di regola di reclamo**, scegli **Trasforma un reclamo in entrata**, quindi nella NameId pagina **Modifica regola, procedi come segue:**
      + Per il **nome della regola di reclamo**, inserisci **NameId**.
      + In **Incoming claim name (Nome registrazione in ingresso)**, scegliere **Windows Account Name (Nome account Windows)**.
      + In **Outgoing claim name (Nome registrazione in uscita)**, scegliere **Name ID (ID nome)**.
      + In **Outgoing name ID format (Formato ID nome in uscita)**, scegliere **Persistent Identifier (Identificatore persistente)**.
      + Scegliere **Pass through all claim values (Passaggio di tutti i valori di registrazione)**.

   1. Nella pagina **Edit Claim Rules (Modifica regole di registrazione)**, scegliere **Add Rule (Aggiungi regola)**. Nella pagina **Select Rule Template (Seleziona modello regola)** per **Claim rule template (Modello regola registrazione)**, scegliere **Send LDAP Attributes as Claims (Invia attributi LDAP come registrazioni)**.

   1. Nella pagina **Configure Rule (Configura regola)**, procedere come segue:
      + In **Claim rule name** (Nome regola di attestazione), inserisci **RoleSessionName**.
      + In **Attribute store (Archivio attributi)**, scegliere **Active Directory**.
      + In **LDAP Attribute (Attributo LDAP)**, scegliere **Email Addresses (Indirizzi di posta elettronica)**.
      + Per **Tipo di attestazione in uscita**, scegli **https://aws.amazon.com/SAML/Attributes/RoleSessionName**.

   1. Nella pagina **Edit Claim Rules (Modifica regole di registrazione)**, scegliere **Add Rule (Aggiungi regola)**. Nella pagina **Select Rule Template (Seleziona modello regola)**, per **Claim rule template (Modello regola di registrazione)**, scegliere **Send Claims Using a Custom Rule (Invia registrazioni utilizzando una regola personalizzata)**.

   1. Nella pagina **Edit Rule – Get AD Groups (Modifica regola — Ottieni AD)**, per **Claim rule name (Nome regola registrazione)**, immettere **Get AD Groups (Ottieni gruppi AD)**.

   1. Per **Custom rule (Regola personalizzata)**, immettere quanto segue.

      ```
      c:[Type ==
                                          "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
                                          Issuer == "AD AUTHORITY"] => add(store = "Active Directory",
                                          types = ("http://temp/variable"), query = ";tokenGroups;{0}",
                                          param = c.Value);
      ```

   1. Nella pagina **Edit Claim Rules (Modifica regole di registrazione)**, scegliere **Add Rule (Aggiungi regola)**. Nella pagina **Select Rule Template (Seleziona modello regola)**, per **Claim rule template (Modello regola di registrazione)**, scegliere **Send Claims Using a Custom Rule (Invia registrazioni utilizzando una regola personalizzata)**.

   1. Nella pagina **Edit Rule – Roles (Modifica regola - Ruoli)**, in **Claim rule name (Nome regola di registrazione)**, digitare **Roles (Ruoli)**.

   1. Per **Custom rule (Regola personalizzata)**, immettere quanto segue.

      ```
      c:[Type == "http://temp/variable", Value =~ "(?i)^AWS-"] => issue(Type = "https://aws.amazon.com/SAML/Attributes/Role", Value = RegExReplace(c.Value, "AWS-", "arn:aws:iam::123456789012:saml-provider/ADFS,arn:aws:iam::123456789012:role/ADFS-"));
      ```

      Annota ARNs il provider SAML e il ruolo da assumere. In questo esempio, `arn:aws:iam:123456789012:saml-provider/ADFS` è l'ARN del provider SAML ed `arn:aws:iam:123456789012:role/ADFS-` è l'ARN del ruolo.

1. Accertarsi di aver scaricato il file `federationmetadata.xml`. Verificare che il documento non contenga caratteri non validi. Questo è il file di metadati utilizzato durante la configurazione della relazione di trust con AWS. 

1. Creare un provider di identità SAML IAM nella console IAM. Il documento dei metadati fornito è il file XML dei metadati di federazione salvato quando si configura l'applicazione Azure Enterprise. Per la procedura dettagliata, consulta [Creazione e gestione di un provider di identità IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html#idp-manage-identityprovider-console) nella *Guida per l'utente di IAM*. 

1. Creare un ruolo IAM per la federazione SAML 2.0 nella console IAM. Per la procedura dettagliata, consultare [Creazione di un ruolo per SAML](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html#idp_saml_Create) nella *Guida per l'utente di IAM*. 

1. Creare una policy IAM che è possibile collegare al ruolo IAM creato per la federazione SAML 2.0 nella console IAM. Per la procedura dettagliata, consulta [Creazione di policy IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) nella *Guida per l'utente di IAM*. Per un esempio di Azure AD, consulta [Configurazione dell’autenticazione single sign-on JDBC oppure ODBC](setup-azure-ad-identity-provider.md). 

## Fase 2: configurare JDBC oppure ODBC per l’autenticazione in AD FS


------
#### [ JDBC ]

 Nella procedura seguente viene descritto come configurare una relazione JDBC con AD FS. 
+ Configurare il client di database per connettersi al cluster tramite JDBC usando Single Sign-On di Azure AD. 

  È possibile utilizzare qualsiasi client che utilizza un driver JDBC per connettersi tramite Single Sign-On di AD FS o usare un linguaggio come Java per connettersi mediante uno script. Per informazioni sull'installazione e sulla configurazione, consulta [Configurazione di una connessione per il driver JDBC versione 2.x per Amazon Redshift](jdbc20-install.md).

  Ad esempio, puoi utilizzarlo SQLWorkbench/J come client. Quando configuri SQLWorkbench /J, l'URL del database utilizza il seguente formato.

  ```
  jdbc:redshift:iam://cluster-identifier:us-west-1/dev
  ```

  Se lo usi SQLWorkbench/J come client, procedi nel seguente modo:

  1. Avvia SQL Workbench/J. Nella pagina **Seleziona profilo connessione**, aggiungi un **Gruppo di profili**, ad esempio **ADFS**.

  1. In **Connection Profile (Profilo connessione)**, immettere il nome del profilo di connessione, ad esempio **ADFS**.

  1. Selezionare **Manage Drivers (Gestisci driver)**, quindi **Amazon Redshift**. Scegliere l'icona **Open Folder (Apri cartella)** accanto a **Library (Libreria)**, quindi scegliere il file JDBC .jar appropriato. 

  1. Nella pagina **Select Connection Profile (Seleziona profilo connessione)**, aggiungere informazioni al profilo di connessione come segue:
     + In **User (Utente)**, immettere il nome utente AD FS. Si tratta del nome utente dell'account che si sta utilizzando per Single Sign-On che dispone delle autorizzazioni per il cluster per il quale si sta tentando di autenticare l'utilizzo.
     + In **Password**, immettere la password AD FS.
     + Per **Drivers (Driver)**, scegliere **Amazon Redshift (com.amazon.com.rproxy.govskope.caredShift.jdbc.driver)**.
     + Per **URL**, immettere **jdbc:redshift:iam://*your-cluster-identifier*:*your-cluster-region*/*your-database-name***.

  1. Scegli **Proprietà estese**. Per **plugin\$1name**, immettere **com.amazon.redshift.plugin.AdfsCredentialsProvider**. Questo valore indica al driver di utilizzare Single Sign-On di Azure AD come metodo di autenticazione. 

------
#### [ ODBC ]

**Per configurare ODBC per l'autenticazione ad AD FS**
+ Configurare il client di database per connettersi al cluster tramite ODBC utilizzando Single Sign-On di Azure AD. 

  Amazon Redshift fornisce driver ODBC per i sistemi operativi Linux, Windows e macOS. Prima di installare un driver ODBC, è necessario determinare se lo strumento client SQL è a 32 o 64 bit. Installare il driver ODBC che soddisfa i requisiti dello strumento client SQL. 

  In Windows, nella pagina **Amazon Redshift ODBC Driver DSN Setup (Configurazione DSN Driver ODBC Amazon Redshift)** in **Connection Settings (Impostazioni connessione)**, immettere le seguenti informazioni: 
  + Per **Data Source Name (Nome origine dati)**, immettere ***your-DSN***. Specificare il nome dell'origine dati utilizzato come nome del profilo ODBC. 
  + Per **Tipo di autenticazione**, scegli **Provider di identità: SAML**. Si tratta del metodo di autenticazione utilizzato dal driver ODBC per autenticare mediante Single Sign-On di AD FS.
  + Per **Cluster ID (ID cluster)**, immettere ***your-cluster-identifier***. 
  + Per **Region (Regione)**, immettere ***your-cluster-region***.
  + Per **Database**, immettere ***your-database-name***.
  + Per **User (Utente)**, immettere ***your-adfs-username***. Si tratta del nome utente dell'account AD FS che si sta utilizzando per l'accesso Single Sign-On con autorizzazioni per il cluster per il quale si sta tentando di autenticare l'utilizzo. Utilizzarlo solo per **Auth type (Tipo di autenticazione)** è **Identity Provider: SAML (Provider di identità: SAML)**.
  + Per **Password**, immettere ***your-adfs-password***. Utilizzarlo solo per **Auth type (Tipo di autenticazione)** è **Identity Provider: SAML (Provider di identità: SAML)**. 

  Su macOS e Linux, modificare il file `odbc.ini` come segue: 
**Nota**  
Tutte le voci non fanno distinzione tra maiuscole e minuscole.
  + Per **clusterid**, immettere ***your-cluster-identifier***. Questo è il nome del cluster Amazon Redshift creato.
  + Per **region**, immettere ***your-cluster-region***. Questa è la AWS regione del cluster Amazon Redshift creato.
  + Per **database**, immettere ***your-database-name***. Questo è il nome del database a cui si sta provando ad accedere nel cluster Amazon Redshift.
  + Per **locale**, immettere **en-us**. Questa è la lingua in cui vengono visualizzati i messaggi di errore.
  + Per **iam**, immettere **1**. Questo valore consente al driver di eseguire l'autenticazione utilizzando le credenziali IAM.
  + Per **plugin\$1name**, effettuare una delle seguenti operazioni:
    + Per la configurazione di Single Sign-On di AD FS con autenticazione a più fattori (MFA), immettere **BrowserSAML**. Si tratta del metodo di autenticazione utilizzato dal driver ODBC per l'autenticazione ad AD FS. 
    + Per la configurazione di Single Sign-On di AD FS, immettere **ADFS**. Si tratta del metodo di autenticazione utilizzato dal driver ODBC per eseguire l'autenticazione mediante Single Sign-On di Azure AD. 
  + Per **uid**, immettere ***your-adfs-username***. Si tratta del nome utente dell'account Microsoft Azure che si sta utilizzando per Single Sign-On con autorizzazioni per il cluster a cui si sta tentando di autenticarsi. Utilizzare solo se **plugin\$1name** è **ADFS**.
  + Per **PWD**, immettere ***your-adfs-password***. Utilizzare solo se **plugin\$1name** è **ADFS**. 

  Su macOS e Linux, modificare anche le impostazioni del profilo per aggiungere le seguenti esportazioni.

  ```
  export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
  ```

  ```
  export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini
  ```

------

# Azure


È possibile utilizzare Microsoft Azure AD come provider di identità (IdP) per accedere al cluster Amazon Redshift. In questo tutorial viene illustrato come puoi utilizzare Azure come gestore dell’identità digitale per accedere al cluster Amazon Redshift.

Per informazioni su come federare l'accesso di Amazon Redshift con il single sign-on di Microsoft Azure AD, guarda il video seguente. 

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/aXs9hEgJCss/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/aXs9hEgJCss)


## Passaggio 1: configura Azure e il tuo AWS account in modo che si fidino l'uno dell'altro


Nella procedura seguente viene descritto come configurare una relazione di attendibilità.

**Per configurare Azure AD e il tuo AWS account in modo che si fidino l'uno dell'altro**

1. Crea o utilizza un cluster Amazon Redshift esistente a cui possono connettersi gli utenti di Azure AD. Per configurare la connessione, sono necessarie alcune proprietà di questo cluster, ad esempio l'identificatore del cluster. Per ulteriori informazioni, consulta [Creazione di un cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html).

1. Configura un Azure Active Directory, i gruppi e gli utenti utilizzati AWS sul portale Microsoft Azure.

1. Aggiungi Amazon Redshift come applicazione aziendale sul portale Microsoft Azure da utilizzare per il single sign-on alla AWS console e l'accesso federato ad Amazon Redshift. Scegliere **Enterprise application (Applicazione aziendale)**.

1. Scegliere **\$1New application (\$1Nuova applicazione)**. Viene visualizzata la pagina di aggiunta di un'applicazione.

1. Cercare **AWS** nel campo di ricerca.

1. Seleziona **Amazon Web Services (AWS)** quindi scegli **Aggiungi**. Viene creata l'applicazione AWS .

1. In **Manage (Gestisci)**, scegliere **Single Sign-On**.

1. Scegli **SAML**. Viene visualizzata la pagina Amazon Web Services (AWS) \$1 Accesso basato su SAML.

1. Scegliere **Yes (Sì)** per passare alla pagina di configurazione Single Sign-On con SAML. In questa pagina è riportato l'elenco degli attributi preconfigurati correlati alla funzionalità Single Sign-On.

1. Per **Basic SAML Configuration (Configurazione SAML di base)**, scegliere l'icona di modifica e selezionare **Save (Salva)**.

1. Quando si configurano più applicazioni, fornire un valore di identificatore. Ad esempio, specifica ***https://signin.aws.amazon.com/saml\$12***. Dalla seconda applicazione in poi utilizzare questo formato con un segno \$1 per specificare un valore SPN univoco.

1. Nella sezione **User Attributes and Claims (Attributi utente e registrazioni)**, scegliere l'icona di modifica.

   Per impostazione predefinita, l'Unique User Identifier (UID), il ruolo e le attestazioni sono preconfigurati. RoleSessionName SessionDuration 

1. Scegliere **\$1 Add new claim (\$1 Aggiungi nuova registrazione)** per aggiungere una registrazione per gli utenti del database.

   In **Nome**, inserisci **DbUser**.

   Per **Namespace** (Spazio dei nomi), immettere **https://redshift.amazon.com/SAML/Attributes**.

   In **Source (Origine)**, scegliere **Attribute (Attributo)**.

   In **Source attribute (Attributo di origine)**, scegliere **user.userprincipalname**. Poi, scegli **Salva**.

1. Scegli **\$1 Aggiungi nuovo reclamo per cui** aggiungere un reclamo. AutoCreate

   In **Nome**, inserisci **AutoCreate**.

   Per **Namespace** (Spazio dei nomi), immettere **https://redshift.amazon.com/SAML/Attributes**.

   In **Source (Origine)**, scegliere **Attribute (Attributo)**.

   Per **Source attribute (Attributo di origine)**, scegliere **"true"**. Poi, scegli **Salva**.

   Qui `123456789012` è l’account AWS , *`AzureSSO`* è un ruolo IAM creato e *`AzureADProvider`* è il provider IAM.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/redshift/latest/mgmt/setup-identity-provider-azure.html)

1. In **App Registration (Registrazione app) > ***your-application-name*** > Authentication (Autenticazione)**, aggiungere **Mobile And Desktop Application (Applicazione mobile e desktop)**. Specificare l'URL come http://localhost/redshift/.

1. Nella sezione **SAML Signing Certificate (Certificato di firma SAML)**, scegliere **Download (Scarica)** per scaricare e salvare il file XML dei metadati della federazione da utilizzare durante la creazione di un provider di identità SAML IAM. Questo file viene utilizzato per creare l'identità Single Sign-On federata.

1. Creare un provider di identità SAML IAM nella console IAM. Il documento dei metadati fornito è il file XML dei metadati della federazione salvato quando si configura l'applicazione Azure Enterprise. Per la procedura dettagliata, consultare [Creazione e gestione di un provider di identità IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html#idp-manage-identityprovider-console) nella *Guida per l'utente di IAM*. 

1. Creare un ruolo IAM per la federazione SAML 2.0 nella console IAM. Per la procedura dettagliata, consulta [Creazione di un ruolo per SAML](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html#idp_saml_Create) nella *Guida per l'utente di IAM*. 

1. Creare una policy IAM che è possibile collegare al ruolo IAM creato per la federazione SAML 2.0 nella console IAM. Per la procedura dettagliata, consulta [Creazione di policy IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) nella *Guida per l'utente di IAM*.

   Modificare le policy seguenti (in formato JSON) per l'ambiente: 
   + Sostituisci AWS la regione del tuo cluster con. `us-west-1` 
   + Sostituisci il tuo AWS account con. *`123456789012`* 
   + Sostituire l'identificatore del cluster (o `*` per tutti i cluster) per *`cluster-identifier`*. 
   + Sostituire il database (o `*` per tutti i database) per *`dev`*. 
   + Sostituire l'identificatore univoco del ruolo IAM per *`AROAJ2UCCR6DPCEXAMPLE`*. 
   + Sostituire il dominio dell'e-mail del tenant o della società per `example.com`. 
   + Sostituire il gruppo di database a cui si intende assegnare l'utente per *`my_dbgroup`*. 

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "redshift:GetClusterCredentials",
               "Resource": [
                   "arn:aws:redshift:us-west-1:123456789012:dbname:cluster-identifier/dev",
                   "arn:aws:redshift:us-west-1:123456789012:dbuser:cluster-identifier/${redshift:DbUser}",
                   "arn:aws:redshift:us-west-1:123456789012:cluster:cluster-identifier"
               ],
               "Condition": {
                   "StringEquals": {
                       "aws:userid": "AROAJ2UCCR6DPCEXAMPLE:${redshift:DbUser}@example.com"
                   }
               }
           },
           {
               "Effect": "Allow",
               "Action": "redshift:CreateClusterUser",
               "Resource": "arn:aws:redshift:us-west-1:123456789012:dbuser:cluster-identifier/${redshift:DbUser}"
           },
           {
               "Effect": "Allow",
               "Action": "redshift:JoinGroup",
               "Resource": "arn:aws:redshift:us-west-1:123456789012:dbgroup:cluster-identifier/my_dbgroup"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "redshift:DescribeClusters",
                   "iam:ListRoles"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

   Questa policy concede le autorizzazioni come segue:
   + La prima sezione concede l'autorizzazione all'operazione API `GetClusterCredentials` per ottenere credenziali temporanee per il cluster specificato. In questo esempio, la risorsa è `cluster-identifier` con database *`dev`*, nell'account *`123456789012`* e nella regione AWS *`us-west-1`*. La clausola `${redshift:DbUser}` consente di connettersi solo agli utenti che corrispondono al valore `DbUser` specificato in Azure AD.
   + La clausola di condizione definisce che solo alcuni utenti ottengono le credenziali temporanee. Sono utenti con il ruolo specificato dall'ID univoco del ruolo *`AROAJ2UCCR6DPCEXAMPLE`* nell'account IAM identificato da un indirizzo e-mail nel dominio e-mail della società. Per ulteriori informazioni su unique IDs, consulta [Unique IDs](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-unique-ids) nella *IAM User Guide*. 

     L'installazione con l'IDP (in questo caso Azure AD) determina la modalità di scrittura della clausola di condizione. Se l'e-mail del dipendente è `johndoe@example.com`, `${redshift:DbUser}` impostare innanzitutto il campo super che corrisponde al nome utente del dipendente `johndoe`. Per il funzionamento di questa condizione, imposta il campo `RoleSessionName` di AWS SAML sul campo super che corrisponde all'e-mail del dipendente `johndoe@example.com`. Quando si adotta questo approccio, considerare quanto segue:
     + Se si imposta `${redshift:DbUser}` in modo che sia l'e-mail del dipendente, rimuovere il JSON `@example.com` di esempio per associare il `RoleSessionName`. 
     + Se si imposta `RoleSessionId` in modo che sia solo il nome utente del dipendente, rimuovere `@example.com` nell'esempio per associare il `RoleSessionName`. 
     + Nell'esempio JSON, `${redshift:DbUser}` e `RoleSessionName` sono entrambi impostati sull'e-mail del dipendente. In questo esempio JSON utilizza il nome utente del database Amazon Redshift con `@example.com` per consentire all'utente di accedere al cluster.
   + La seconda sezione concede l'autorizzazione per creare un nome `dbuser` nel cluster specificato. In questo esempio, JSON limita la creazione a `${redshift:DbUser}`. 
   + La terza sezione concede l'autorizzazione per specificare il `dbgroup` al quale un utente può partecipare. In questo esempio JSON, un utente può unirsi al gruppo `my_dbgroup` nel cluster specificato. 
   + La quarta sezione concede l'autorizzazione alle operazioni che l'utente può eseguire su tutte le risorse. In questo esempio, JSON, consente agli utenti di effettuare chiamate per `redshift:DescribeClusters` ottenere informazioni sul cluster, come l'endpoint, la AWS regione e la porta del cluster. Consente inoltre agli utenti di chiamare `iam:ListRoles` per verificare quali ruoli un utente può assumere. 

## Fase 2: configurare JDBC o ODBC per l’autenticazione in Azure


------
#### [ JDBC ]

**Per configurare JDBC per l'autenticazione in Microsoft Azure AD**
+ Configurare il client di database per connettersi al cluster tramite JDBC usando Azure AD Single Sign-On. 

  È possibile utilizzare qualsiasi client che utilizza un driver JDBC per connettersi tramite Azure AD Single Sign-On o usare un linguaggio come Java per connettersi utilizzando uno script. Per informazioni sull'installazione e sulla configurazione, consulta [Configurazione di una connessione per il driver JDBC versione 2.x per Amazon Redshift](jdbc20-install.md).

  Ad esempio, è possibile utilizzare SQLWorkbench/J come client. Quando configuri SQLWorkbench /J, l'URL del database utilizza il seguente formato.

  ```
  jdbc:redshift:iam://cluster-identifier:us-west-1/dev
  ```

  Se lo usi SQLWorkbench/J come client, procedi nel seguente modo:

  1. Avvia SQL Workbench/J. Sulla pagina **Seleziona profilo di connessione**, aggiungi un **Gruppo di profili** denominato **AzureAuth**.

  1. Per **Connection Profile (Profilo connessione)**, immettere **Azure**.

  1. Selezionare **Manage Drivers (Gestisci driver)**, quindi **Amazon Redshift**. Scegliere l'icona **Open Folder (Apri cartella)** accanto a **Library (Libreria)**, quindi scegliere il file JDBC .jar appropriato. 

  1. Nella pagina **Select Connection Profile (Seleziona profilo connessione)**, aggiungere informazioni al profilo di connessione come segue:
     + Per **User (Utente)**, immettere il nome utente di Microsoft Azure. Si tratta del nome utente dell'account Microsoft Azure che si sta utilizzando per Single Sign-On che dispone delle autorizzazioni per il cluster per il quale si sta tentando di autenticare l'utilizzo.
     + Per **Password**, immettere la password di Microsoft Azure.
     + Per **Drivers (Driver)**, scegliere **Amazon Redshift (com.amazon.com.rproxy.govskope.caredShift.jdbc.driver)**.
     + Per **URL**, immettere **jdbc:redshift:iam://*your-cluster-identifier*:*your-cluster-region*/*your-database-name***.

  1. Scegliere **Extended Properties (Proprietà estese)** per aggiungere ulteriori informazioni alle proprietà di connessione, come descritto di seguito:

     Per la configurazione Single Sign-On di Azure AD, aggiungere ulteriori informazioni come segue:
     + Per **plugin\$1name**, immettere **com.amazon.redshift.plugin.AzureCredentialsProvider**. Questo valore indica al driver di utilizzare Azure AD Single Sign-On come metodo di autenticazione. 
     + Per **idp\$1tenant**, immettere ***your-idp-tenant***. Utilizzato solo per Microsoft Azure AD. Si tratta del nome tenant dell'azienda configurata in Azure AD. Questo valore può essere il nome del tenant o l'ID univoco tenant con trattini.
     + Per **client\$1secret**, immettere ***your-azure-redshift-application-client-secret***. Utilizzato solo per Microsoft Azure AD. Questo è il segreto client dell'applicazione Amazon Redshift creata durante la configurazione di Azure Single Sign-On. Questo è applicabile solo al com.amazon.redshift.plugin. AzureCredentialsProviderplugin. 
     + Per **client\$1id**, immettere ***your-azure-redshift-application-client-id***. Utilizzato solo per Microsoft Azure AD. Si tratta dell'ID client (con trattini) dell'applicazione Amazon Redshift creata durante la configurazione di Azure Single Sign-On. 

     Per la configurazione Single Sign-On di Azure AD con autenticazione a più fattori (MFA), aggiungere ulteriori informazioni alle proprietà di connessione come segue:
     + Per **plugin\$1name**, immettere **com.amazon.redshift.plugin.BrowserAzureCredentialsProvider**. Questo valore indica al driver di utilizzare Single Sign-On di Azure AD con autenticazione a più fattori (MFA) come metodo di autenticazione. 
     + Per **idp\$1tenant**, immettere ***your-idp-tenant***. Utilizzato solo per Microsoft Azure AD. Si tratta del nome tenant dell'azienda configurata in Azure AD. Questo valore può essere il nome del tenant o l'ID univoco tenant con trattini.
     + Per **client\$1id**, immettere ***your-azure-redshift-application-client-id***. Questa opzione è utilizzata solo per Microsoft Azure AD. Si tratta dell'ID client (con trattini) dell'applicazione Amazon Redshift creata durante la configurazione di Single Sign-On di Azure AD con autenticazione a più fattori (MFA). 
     + Per **listen\$1port**, immettere ***your-listen-port***. Questa è la porta ascoltata dal server locale. Il valore predefinito è 7890. 
     + In **idp\$1response\$1timeout**, immettere ***the-number-of-seconds***. Questo è il numero di secondi di attesa prima del timeout quando il server IdP restituisce una risposta. Il numero minimo di secondi deve essere 10. Se stabilire la connessione richiede più tempo della soglia prevista, l'operazione viene interrotta.

------
#### [ ODBC ]

**Per configurare ODBC per l'autenticazione in Microsoft Azure AD**
+ Configurare il client di database per connettersi al cluster tramite ODBC utilizzando Azure AD Single Sign-On. 

  Amazon Redshift fornisce driver ODBC per i sistemi operativi Linux, Windows e macOS. Prima di installare un driver ODBC, è necessario determinare se lo strumento client SQL è a 32 o 64 bit. Installare il driver ODBC che soddisfa i requisiti dello strumento client SQL. 

  In Windows, nella pagina **Amazon Redshift ODBC Driver DSN Setup (Configurazione DSN Driver ODBC Amazon Redshift)** in **Connection Settings (Impostazioni connessione)**, immettere le seguenti informazioni: 
  + Per **Data Source Name (Nome origine dati)**, immettere ***your-DSN***. Specificare il nome dell'origine dati utilizzato come nome del profilo ODBC. 
  + Nel campo **Tipo di autenticazione** per la configurazione Single Sign-On di Azure AD, scegliere **Identity Provider: Azure AD**. Si tratta del metodo di autenticazione utilizzato dal driver ODBC per autenticare mediante Azure Single Sign-On.
  + Nel campo **Tipo di autenticazione** per la configurazione Single Sign-On di Azure AD con autenticazione a più fattori (MFA), scegliere **Identity Provider: Browser Azure AD**. Si tratta del metodo di autenticazione utilizzato dal driver ODBC per autenticare mediante Azure Single Sign-On con MFA.
  + Per **Cluster ID (ID cluster)**, immettere ***your-cluster-identifier***. 
  + Per **Region (Regione)**, immettere ***your-cluster-region***.
  + Per **Database**, immettere ***your-database-name***.
  + Per **User (Utente)**, immettere ***your-azure-username***. Si tratta del nome utente dell'account Microsoft Azure che si sta utilizzando per Single Sign-On che dispone delle autorizzazioni per il cluster per il quale si sta tentando di autenticare l'utilizzo. Utilizzarlo solo se **Auth Type (Tipo di autorizzazione)** è **Identity Provider: Azure AD (Provider di identità: Azure AD)**.
  + Per **Password**, immettere ***your-azure-password***. Utilizzarlo solo se **Auth Type (Tipo di autorizzazione)** è **Identity Provider: Azure AD (Provider di identità: Azure AD)**. 
  + Per **iDP Tenant (Tenant Idp)**, immettere ***your-idp-tenant***. Si tratta del nome del tenant della società configurata in IDP (Azure). Questo valore può essere il nome del tenant o l'ID univoco tenant con trattini.
  + Per **Azure Client Secret (Segreto client di Azure)**, immettere ***your-azure-redshift-application-client-secret***. Questo è il segreto client dell'applicazione Amazon Redshift creata durante la configurazione di Azure Single Sign-On. 
  + Per **Azure Client ID (ID client di Azure)**, immettere ***your-azure-redshift-application-client-id***. Si tratta dell'ID client (con trattini) dell'applicazione Amazon Redshift creata durante la configurazione di Azure Single Sign-On. 
  + Per **Listen Port (Porta di ascolto)**, immettere ***your-listen-port***. Questa è la porta di ascolto predefinita ascoltata dal server locale. Il valore predefinito è 7890. Si applica solo al plug-in Browser Azure AD. 
  + In **Response Timeout (Timeout di risposta)**, immettere ***the-number-of-seconds***. Questo è il numero di secondi di attesa prima del timeout quando il server IdP restituisce una risposta. Il numero minimo di secondi deve essere 10. Se stabilire la connessione richiede più tempo della soglia prevista, l'operazione viene interrotta. Questa opzione si applica solo al plug-in Browser Azure AD.

  Su macOS e Linux, modificare il file `odbc.ini` come segue: 
**Nota**  
Tutte le voci non fanno distinzione tra maiuscole e minuscole.
  + Per **clusterid**, immettere ***your-cluster-identifier***. Questo è il nome del cluster Amazon Redshift creato.
  + Per **region**, immettere ***your-cluster-region***. Questa è la AWS regione del cluster Amazon Redshift creato.
  + Per **database**, immettere ***your-database-name***. Questo è il nome del database a cui si sta provando ad accedere nel cluster Amazon Redshift.
  + Per **locale**, immettere **en-us**. Questa è la lingua in cui vengono visualizzati i messaggi di errore.
  + Per **iam**, immettere **1**. Questo valore consente al driver di eseguire l'autenticazione utilizzando le credenziali IAM.
  + In **plugin\$1name** per la configurazione Single Sign-On di Azure AD, immettere **AzureAD**. Specifica al driver di utilizzare Azure Single Sign-On come metodo di autenticazione. 
  + In **plugin\$1name** per la configurazione Single Sign-On di Azure AD con autenticazione a più fattori (MFA), immettere **BrowserAzureAD**. Indica al driver di utilizzare Azure Single Sign-On con MFA come metodo di autenticazione. 
  + Per **uid**, immettere ***your-azure-username***. Si tratta del nome utente dell'account Microsoft Azure che si sta utilizzando per Single Sign-On che dispone delle autorizzazioni per il cluster a cui si sta tentando di autenticarsi. Utilizzare solo per **plugin\$1name** è **AzureAD**.
  + Per **PWD**, immettere ***your-azure-password***. Utilizzare solo per **plugin\$1name** è **AzureAD**. 
  + Per **idp\$1tenant**, immettere ***your-idp-tenant***. Si tratta del nome del tenant della società configurata in IDP (Azure). Questo valore può essere il nome del tenant o l'ID univoco tenant con trattini.
  + Per **client\$1secret**, immettere ***your-azure-redshift-application-client-secret***. Questo è il segreto client dell'applicazione Amazon Redshift creata durante la configurazione di Azure Single Sign-On. 
  + Per **client\$1id**, immettere ***your-azure-redshift-application-client-id***. Si tratta dell'ID client (con trattini) dell'applicazione Amazon Redshift creata durante la configurazione di Azure Single Sign-On. 
  + Per **listen\$1port**, immettere ***your-listen-port***. Questa è la porta ascoltata dal server locale. Il valore predefinito è 7890. Questo si applica al plug-in Browser Azure AD.
  + In **idp\$1response\$1timeout**, immettere ***the-number-of-seconds***. Questo è il periodo di tempo specificato in secondi di attesa della risposta da Azure. Questa opzione si applica al plug-in Browser Azure AD.

  Su macOS e Linux, modificare anche le impostazioni del profilo per aggiungere le seguenti esportazioni.

  ```
  export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
  ```

  ```
  export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini
  ```

------

## Risoluzione dei problemi


Per risolvere i problemi con il plugin Azure AD per browser, considera quanto segue.
+ Per usare il plugin Browser Azure AD, è necessario impostare l'URL di risposta specificato nella richiesta in modo che corrisponda all'URL di risposta configurato per l'applicazione. Passare alla pagina **Configura Single Sign-On con SAML** nel portale di Microsoft Azure. Quindi controllare che l'**URL di risposta** sia impostato su http://localhost/redshift/.
+ Se viene visualizzato un errore tenant IdP, verificare che il nome **tenant IdP** corrisponda al nome di dominio utilizzato inizialmente per configurare Active Directory in Microsoft Azure.

  Su Windows, passa alla sezione **Impostazioni connessione** della pagina **Configurazione DSN ODBC di Amazon Redshift**. Verificare quindi che il nome del tenant della società configurata nell'IdP (Azure) corrisponda al nome di dominio utilizzato inizialmente per configurare Active Directory in Microsoft Azure.

  Su macOS e Linux, trova il file *odbc.ini* . Verificare quindi che il nome del tenant della società configurata nell'IdP (Azure) corrisponda al nome di dominio utilizzato inizialmente per configurare Active Directory in Microsoft Azure.
+ Se ricevi un errore che indica che l'URL di risposta specificato nella richiesta non corrisponde alla risposta URLs configurata per la tua applicazione, verifica che il **reindirizzamento URIs** sia lo stesso dell'URL di risposta.

  Passare alla pagina di **registrazione app** dell'applicazione nel portale di Microsoft Azure. Quindi controlla che il reindirizzamento URIs corrisponda all'URL di risposta.
+ Se si ottiene la risposta imprevista: errore non autorizzato, verificare di aver completato la configurazione delle **applicazioni mobili e desktop**.

  Passare alla pagina di **registrazione app** dell'applicazione nel portale di Microsoft Azure. Quindi vai su **Autenticazione** e verifica di aver configurato **le applicazioni mobili e desktop** per utilizzare http://localhost/redshift/ come reindirizzamento URIs.

# Identità Ping


Puoi utilizzare Ping Identity come provider di identità (IdP) per accedere al cluster Amazon Redshift. In questo tutorial viene illustrato come puoi utilizzare Ping Identity come gestore dell’identità digitale per accedere al cluster Amazon Redshift.

## Passaggio 1: configura Ping Identity e il tuo AWS account in modo che si fidino l'uno dell'altro


La procedura seguente descrive come impostare una relazione di fiducia utilizzando il PingOne portale.

**Per configurare Ping Identity e il tuo AWS account in modo che si fidino l'uno dell'altro**

1. Crea o utilizza un cluster Amazon Redshift esistente a cui possono accedere gli utenti di Ping Identity. Per configurare la connessione, sono necessarie alcune proprietà di questo cluster, ad esempio l'identificatore del cluster. Per ulteriori informazioni, consulta [Creazione di un cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html).

1. Aggiungi Amazon Redshift come nuova applicazione SAML sul portale. PingOne Per i passaggi dettagliati, vedere la [documentazione relativa all'identità di ping](https://docs.pingidentity.com/). 

   1. Passare a **My Applications (Le mie applicazioni)**.

   1. In **Add Application (Aggiungi applicazione)**, scegliere **New SAML Application (Nuova applicazione SAML)**.

   1. Per **Application name (Nome applicazione)**, immettere **Amazon Redshift**.

   1. Per **Protocol Version (Versione protocollo)**, scegliere **SAML v2.0**.

   1. Per **Category (Categoria)**, scegliere ***your-application-category***.

   1. Per **Assertion Consumer Service (ACS)**, digitare ***your-redshift-local-host-url***. Questo è l'host locale e la porta verso cui l'asserzione SAML esegue il reindirizzamento.

   1. Per **Entity ID** (ID entità), inserisci `urn:amazon:webservices`.

   1. Per **Signing (Firma)**, scegliere **Sign Assertion (Asserzione firma)**.

   1. Nella sezione **SSO Attribute Mapping (Mappatura degli attributi SSO)**, creare le registrazioni come illustrato nella tabella seguente.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/redshift/latest/mgmt/setup-identity-provider-ping.html)

1. Per **Group Access (Accesso di gruppo)**, impostare il seguente accesso di gruppo, se necessario:
   + **https://aws.amazon.com/SAML/Attributes/Role**
   + **https://aws.amazon.com/SAML/Attributes/RoleSessionName**
   + **https://redshift.amazon.com/SAML/Attributes/AutoCreate**
   + **https://redshift.amazon.com/SAML/Attributes/DbUser**

1. Rivedere la configurazione e apportare modifiche, se necessario. 

1. Utilizzare **Initiate Single Sign-On (SSO) URL (URL Single Sign-On (SSO) di avvio)** come URL di accesso per il plugin Browser SAML.

1. Creare un provider di identità SAML IAM nella console IAM. Il documento dei metadati fornito è il file XML dei metadati di federazione salvato quando si configura l'applicazione Ping Identity. Per la procedura dettagliata, consulta [Creazione e gestione di un provider di identità IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html#idp-manage-identityprovider-console) nella *Guida per l'utente di IAM*.

1. Creare un ruolo IAM per la federazione SAML 2.0 nella console IAM. Per la procedura dettagliata, consulta [Creazione di un ruolo per SAML](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html#idp_saml_Create) nella *Guida per l'utente di IAM*. 

1. Creare una policy IAM che è possibile collegare al ruolo IAM creato per la federazione SAML 2.0 nella console IAM. Per la procedura dettagliata, consulta [Creazione di policy IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) nella *Guida per l'utente di IAM*. Per un esempio di Azure AD, consulta [Configurazione dell’autenticazione single sign-on JDBC oppure ODBC](setup-azure-ad-identity-provider.md). 

## Fase 2: configurare JDBC oppure ODBC per l’autenticazione in Ping Identity


------
#### [ JDBC ]

**Come configurare JDBC per l'autenticazione in Ping Identity**
+ Configura il client di database per connettersi al cluster tramite JDBC utilizzando Single Sign-On di Ping Identity. 

  È possibile utilizzare qualsiasi client che utilizza un driver JDBC per connettersi tramite Single Sign-On di Ping Identity o usare un linguaggio come Java per connettersi mediante uno script. Per informazioni sull'installazione e sulla configurazione, consulta [Configurazione di una connessione per il driver JDBC versione 2.x per Amazon Redshift](jdbc20-install.md).

  Ad esempio, puoi usare SQLWorkbench/J come client. Quando configuri SQLWorkbench /J, l'URL del database utilizza il seguente formato.

  ```
  jdbc:redshift:iam://cluster-identifier:us-west-1/dev
  ```

  Se lo usi SQLWorkbench/J come client, procedi nel seguente modo:

  1. Avvia SQL Workbench/J. Nella pagina **Seleziona profilo connessione**, aggiungi un **Gruppo di profili**, ad esempio **Ping**.

  1. Per **Connection Profile (Profilo connessione)**, immettere ***your-connection-profile-name***, ad esempio **Ping**.

  1. Selezionare **Manage Drivers (Gestisci driver)**, quindi **Amazon Redshift**. Scegliere l'icona **Open Folder (Apri cartella)** accanto a **Library (Libreria)**, quindi scegliere il file JDBC .jar appropriato. 

  1. Nella pagina **Select Connection Profile (Seleziona profilo connessione)**, aggiungere informazioni al profilo di connessione come segue:
     + Per **Utente**, inserisci il tuo nome PingOne utente. Si tratta del nome utente dell'account PingOne che si sta utilizzando per Single Sign-On che dispone delle autorizzazioni per il cluster per il quale si sta tentando di autenticare l'utilizzo.
     + Per **Password**, inserisci la tua PingOne password.
     + Per **Drivers (Driver)**, scegliere **Amazon Redshift (com.amazon.com.rproxy.govskope.caredShift.jdbc.driver)**.
     + Per **URL**, immettere **jdbc:redshift:iam://*your-cluster-identifier*:*your-cluster-region*/*your-database-name***.

  1. Scegliere **Extended Properties (Proprietà estese)** ed effettuare una delle seguenti operazioni:
     + Per **login\$1url**, immettere ***your-ping-sso-login-url***. Questo valore specifica l'URL per utilizzare Single Sign-On come autenticazione di accesso. 
     + Per Ping Identity, in **plugin\$1name**, immetti **com.amazon.redshift.plugin.PingCredentialsProvider**. Questo valore indica al driver di utilizzare Single Sign-On di Ping Identity come metodo di autenticazione. 
     + Per Ping Identity con Single Sign-On, in **plugin\$1name** immettere **com.amazon.redshift.plugin.BrowserSamlCredentialsProvider**. Questo valore specifica al driver di utilizzare Ping Identity PingOne con Single Sign-on come metodo di autenticazione. 

------
#### [ ODBC ]

**Come configurare ODBC per l'autenticazione in Ping Identity**
+ Configura il client del database per la connessione al cluster tramite ODBC utilizzando Ping Identity Single Sign-on. PingOne 

  Amazon Redshift fornisce driver ODBC per i sistemi operativi Linux, Windows e macOS. Prima di installare un driver ODBC, è necessario determinare se lo strumento client SQL è a 32 o 64 bit. Installare il driver ODBC che soddisfa i requisiti dello strumento client SQL. 

  In Windows, nella pagina **Amazon Redshift ODBC Driver DSN Setup (Configurazione DSN Driver ODBC Amazon Redshift)** in **Connection Settings (Impostazioni connessione)**, immettere le seguenti informazioni: 
  + Per **Data Source Name (Nome origine dati)**, immettere ***your-DSN***. Specificare il nome dell'origine dati utilizzato come nome del profilo ODBC. 
  + In **Auth type (Tipo di autenticazione)**, procedere in uno dei seguenti modi:
    + Per la configurazione di Ping Identity, seleziona **Provider di identità: federazione Ping**. Questo è il metodo di autenticazione utilizzato dal driver ODBC per eseguire l'autenticazione mediante Single Sign-On di Ping Identity.
    + Per la configurazione di Ping Identity con Single Sign-On, scegliere **Identity Provider: Browser SAML** (Provider identità: browser SAML). Questo è il metodo di autenticazione utilizzato dal driver ODBC per eseguire l'autenticazione mediante Ping Identity con Single Sign-On.
  + Per **Cluster ID (ID cluster)**, immettere ***your-cluster-identifier***. 
  + Per **Region (Regione)**, immettere ***your-cluster-region***.
  + Per **Database**, immettere ***your-database-name***.
  + Per **User (Utente)**, immettere ***your-ping-username***. Questo è il nome utente dell' PingOne account che stai utilizzando per il Single Sign-On che dispone dell'autorizzazione per il cluster che stai cercando di utilizzare per l'autenticazione. **Usalo solo per il **tipo di autenticazione** come Identity Provider:. PingFederate**
  + Per **Password**, immettere ***your-ping-password***. Usalo solo perché il **tipo di autenticazione** è **Identity Provider**:. PingFederate 
  + Per **Listen Port (Porta di ascolto)**, immettere ***your-listen-port***. Questa è la porta ascoltata dal server locale. Il valore predefinito è 7890. Questo si applica solo al plugin Browser SAML. 
  +  In **Response Timeout (Timeout di risposta)**, immettere ***the-number-of-seconds***. Questo è il numero di secondi di attesa prima del timeout quando il server IdP restituisce una risposta. Il numero minimo di secondi deve essere 10. Se stabilire la connessione richiede più tempo della soglia prevista, l'operazione viene interrotta. Questo si applica solo al plugin Browser SAML.
  + Per **Login URL (URL di accesso)**, immettere ***your-login-url***. Questo si applica solo al plugin Browser SAML.

  Su macOS e Linux, modificare il file `odbc.ini` come segue: 
**Nota**  
Tutte le voci non fanno distinzione tra maiuscole e minuscole.
  + Per **clusterid**, immettere ***your-cluster-identifier***. Questo è il nome del cluster Amazon Redshift creato.
  + Per **region**, immettere ***your-cluster-region***. Questa è la AWS regione del cluster Amazon Redshift creato.
  + Per **database**, immettere ***your-database-name***. Questo è il nome del database a cui si sta provando ad accedere nel cluster Amazon Redshift.
  + Per **locale**, immettere **en-us**. Questa è la lingua in cui vengono visualizzati i messaggi di errore.
  + Per **iam**, immettere **1**. Questo valore consente al driver di eseguire l'autenticazione utilizzando le credenziali IAM.
  + Per **plugin\$1name**, effettuare una delle seguenti operazioni:
    + Per la configurazione di Ping Identity, immetti **BrowserSAML**. Questo è il metodo di autenticazione utilizzato dal driver ODBC per l'autenticazione in Ping Identity. 
    + Per la configurazione di Ping Identity con Single Sign-On, immettere**Ping**. Questo è il metodo di autenticazione utilizzato dal driver ODBC per eseguire l'autenticazione mediante Ping Identity con Single Sign-On. 
  + Per **uid**, immettere ***your-ping-username***. Si tratta del nome utente dell'account Microsoft Azure che si sta utilizzando per Single Sign-On che dispone delle autorizzazioni per il cluster a cui si sta tentando di autenticarsi. Utilizzare solo se **plugin\$1name** è **Ping**.
  + Per **PWD**, immettere ***your-ping-password***. Utilizzare solo se **plugin\$1name** è **Ping**. 
  + Per **login\$1url**, immettere ***your-login-url***. Questo è l'URL Single Sign-On di avvio che restituisce la risposta SAML. Questo si applica solo al plugin Browser SAML.
  + In **idp\$1response\$1timeout**, immettere ***the-number-of-seconds***. Questo è il periodo di tempo specificato, in secondi, per attendere la risposta da PingOne Identity. Questo si applica solo al plugin Browser SAML.
  + Per **listen\$1port**, immettere ***your-listen-port***. Questa è la porta ascoltata dal server locale. Il valore predefinito è 7890. Questo si applica solo al plugin Browser SAML.

  Su macOS e Linux, modificare anche le impostazioni del profilo per aggiungere le seguenti esportazioni.

  ```
  export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
  ```

  ```
  export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini
  ```

------

# Okta


Puoi utilizzare Okta come un provider di identità (IdP) per accedere al cluster Amazon Redshift. In questo tutorial viene illustra come puoi utilizzare Okta come gestore dell’identità digitale per accedere al cluster Amazon Redshift.

## Passaggio 1: configura Okta e il tuo AWS account in modo che si fidino l'uno dell'altro


Nella procedura seguente viene descritto come configurare una relazione di attendibilità.

**Per configurare Okta e il tuo AWS account in modo che si fidino l'uno dell'altro**

1. Crea o utilizza un cluster Amazon Redshift esistente a cui possono connettersi gli utenti di Okta. Per configurare la connessione, sono necessarie alcune proprietà di questo cluster, ad esempio l'identificatore del cluster. Per ulteriori informazioni, consulta [Creazione di un cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html).

1. Aggiungi Amazon Redshift come nuova applicazione sul portale Okta. Per le fasi dettagliate, consultare la [documentazione di Okta](https://developer.okta.com/docs/). 
   + Scegliere **Add Application (Aggiungi applicazione)**.
   + In **Add Application (Aggiungi applicazione)**, scegliere **Create New App (Crea nuova app)**.
   + Nella pagina **Create a New Add Application Integration (Crea una nuova integrazione di aggiunta applicazioni)**, per **Platform (Piattaforma)**, scegliere **Web**.
   + Per **Sign on method (Metodo di accesso)**, scegliere **SAML v2.0**.
   + Nella pagina **General Settings (Impostazioni generali)**, per **App name (Nome app)**, immettere ***your-redshift-saml-sso-name***. È il nome dell'applicazione.
   + Nella pagina **SAML Settings (Impostazioni SAML)** per **Single sign on URL (URL Single Sign On)**, immettere ***your-redshift-local-host-url***. Questo è l'host locale e la porta verso cui l'asserzione SAML esegue il reindirizzamento, ad esempio `http://localhost:7890/redshift/`.

1. Utilizza **URL Single Sign On** come **URL destinatario** e **URL di destinazione**.

1. Per **Signing (Firma)**, scegliere **Sign Assertion (Asserzione firma)**.

1. Per **URI del pubblico (ID entità SP)**, specifica **urn:amazon:webservices**per le attestazioni, come mostrato nella tabella seguente. 

1. Nella sezione **Impostazioni avanzate**, per **ID emittente SAML**, inserisci ***your-Identity-Provider-Issuer-ID***, che puoi trovare nella sezione **Visualizza istruzioni di configurazione**.

1. Nella sezione **Attribute Statements (Istruzioni attributi)**, creare le registrazioni come illustrato nella tabella seguente.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/redshift/latest/mgmt/setup-identity-provider-okta.html)

1. Nella sezione **App Embed Link (Collegamento incorporamento app)**, trovare l'URL che è possibile utilizzare come URL di accesso per il plugin SAML Browser.

1. Creare un provider di identità SAML IAM nella console IAM. Il documento dei metadati fornito è il file XML dei metadati di federazione salvato quando durante la configurazione di Okta. Per la procedura dettagliata, consulta [Creazione e gestione di un provider di identità IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html#idp-manage-identityprovider-console) nella *Guida per l'utente di IAM*. 

1. Creare un ruolo IAM per la federazione SAML 2.0 nella console IAM. Per la procedura dettagliata, consulta [Creazione di un ruolo per SAML](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html#idp_saml_Create) nella *Guida per l'utente di IAM*. 

1. Creare una policy IAM che è possibile collegare al ruolo IAM creato per la federazione SAML 2.0 nella console IAM. Per la procedura dettagliata, consulta [Creazione di policy IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) nella *Guida per l'utente di IAM*. Per un esempio di Azure AD, consulta [Configurazione dell’autenticazione single sign-on JDBC oppure ODBC](setup-azure-ad-identity-provider.md). 

## Fase 2: configurare JDBC oppure ODBC per l’autenticazione in Okta


------
#### [ JDBC ]

**Per configurare JDBC per l'autenticazione in Okta**
+ Configurare il client di database per connettersi al cluster tramite JDBC usando Single Sign-On di Okta.

  È possibile utilizzare qualsiasi client che utilizza un driver JDBC per connettersi tramite Single Sign-On di Okta o usare un linguaggio come Java per connettersi mediante uno script. Per informazioni sull'installazione e sulla configurazione, consulta [Configurazione di una connessione per il driver JDBC versione 2.x per Amazon Redshift](jdbc20-install.md).

  Ad esempio, puoi usare come client. SQLWorkbench/J Quando configuri SQLWorkbench /J, l'URL del database utilizza il seguente formato.

  ```
  jdbc:redshift:iam://cluster-identifier:us-west-1/dev
  ```

  Se lo usi SQLWorkbench/J come client, procedi nel seguente modo:

  1. Avvia SQL Workbench/J. Nella pagina **Seleziona profilo connessione**, aggiungi un **Gruppo di profili**, ad esempio **Okta**.

  1. Per **Connection Profile (Profilo connessione)**, immettere ***your-connection-profile-name***, ad esempio **Okta**.

  1. Selezionare **Manage Drivers (Gestisci driver)**, quindi **Amazon Redshift**. Scegliere l'icona **Open Folder (Apri cartella)** accanto a **Library (Libreria)**, quindi scegliere il file JDBC .jar appropriato. 

  1. Nella pagina **Select Connection Profile (Seleziona profilo connessione)**, aggiungere informazioni al profilo di connessione come segue:
     + Per **User (Utente)**, immettere il nome utente Okta. Si tratta del nome utente dell'account Okta che si sta utilizzando per Single Sign-On che dispone delle autorizzazioni per il cluster per il quale si sta tentando di autenticare l'utilizzo.
     + Per **Password**, immettere la password Okta.
     + Per **Drivers (Driver)**, scegliere **Amazon Redshift (com.amazon.com.rproxy.govskope.caredShift.jdbc.driver)**.
     + Per **URL**, immettere **jdbc:redshift:iam://*your-cluster-identifier*:*your-cluster-region*/*your-database-name***.

  1. Scegliere **Extended Properties (Proprietà estese)** ed effettuare una delle seguenti operazioni:
     + Per **login\$1url**, immettere ***your-okta-sso-login-url***. Questo valore specifica l'URL per utilizzare Single Sign-On come autenticazione per accedere a Okta. 
     + Per l'autenticazione Single Sign-On di Okta, in **plugin\$1name** immettere **com.amazon.redshift.plugin.OktaCredentialsProvider**. Questo valore consente al driver di utilizzare l'autenticazione Single Sign-On di Okta come metodo di autenticazione. 
     + Per l'autenticazione Single Sign-On di Okta con autenticazione a più fattori (MFA), in **plugin\$1name** immettere **com.amazon.redshift.plugin.BrowserSamlCredentialsProvider**. Questo valore indica al driver di utilizzare Single Sign-On di Okta con autenticazione a più fattori (MFA) come metodo di autenticazione. 

------
#### [ ODBC ]

**Per configurare ODBC per l'autenticazione in Okta**
+ Configurare il client di database per connettersi al cluster tramite ODBC mediante Single Sign-On di Azure AD. 

  Amazon Redshift fornisce driver ODBC per i sistemi operativi Linux, Windows e macOS. Prima di installare un driver ODBC, è necessario determinare se lo strumento client SQL è a 32 o 64 bit. Installare il driver ODBC che soddisfa i requisiti dello strumento client SQL. 

  In Windows, nella pagina **Amazon Redshift ODBC Driver DSN Setup (Configurazione DSN Driver ODBC Amazon Redshift)** in **Connection Settings (Impostazioni connessione)**, immettere le seguenti informazioni: 
  + Per **Data Source Name (Nome origine dati)**, immettere ***your-DSN***. Specificare il nome dell'origine dati utilizzato come nome del profilo ODBC. 
  + In **Auth type (Tipo di autenticazione)**, procedere in uno dei seguenti modi:
    + Per la configurazione Single Sign-On di Okta, scegliere **Identity Provider: Okta**. Si tratta del metodo di autenticazione utilizzato dal driver ODBC per eseguire l'autenticazione mediante Single Sign-On di Okta.
    + Per la configurazione Single Sign-On di Okta con autenticazione a più fattori (MFA), scegliere **Identity Provider: Browser SAML**. Si tratta del metodo di autenticazione utilizzato dal driver ODBC per eseguire l'autenticazione mediante Single Sign-On di Okta con autenticazione a più fattori (MFA).
  + Per **Cluster ID (ID cluster)**, immettere ***your-cluster-identifier***. 
  + Per **Region (Regione)**, immettere ***your-cluster-region***.
  + Per **Database**, immettere ***your-database-name***.
  + Per **User (Utente)**, immettere ***your-okta-username***. Si tratta del nome utente dell'account Okta che si sta utilizzando per Single Sign-On con autorizzazioni per il cluster per il quale si sta tentando di autenticare l'utilizzo. Utilizzarlo solo per **Auth type (Tipo di autenticazione)** è **Identity Provider: Okta (Provider identità: Okta)**.
  + Per **Password**, immettere ***your-okta-password***. Utilizzarlo solo per **Auth type (Tipo di autenticazione)** è **Identity Provider: Okta (Provider identità: Okta)**. 

  Su macOS e Linux, modificare il file `odbc.ini` come segue: 
**Nota**  
Tutte le voci non fanno distinzione tra maiuscole e minuscole.
  + Per **clusterid**, immettere ***your-cluster-identifier***. Questo è il nome del cluster Amazon Redshift creato.
  + Per **region**, immettere ***your-cluster-region***. Questa è la AWS regione del cluster Amazon Redshift creato.
  + Per **database**, immettere ***your-database-name***. Questo è il nome del database a cui si sta provando ad accedere nel cluster Amazon Redshift.
  + Per **locale**, immettere **en-us**. Questa è la lingua in cui vengono visualizzati i messaggi di errore.
  + Per **iam**, immettere **1**. Questo valore consente al driver di eseguire l'autenticazione utilizzando le credenziali IAM.
  + Per **plugin\$1name**, effettuare una delle seguenti operazioni:
    + Per la configurazione di Single Sign-On di Okta con autenticazione a più fattori (MFA), immettere **BrowserSAML**. Si tratta del metodo di autenticazione utilizzato dal driver ODBC per eseguire l'autenticazione mediante Single Sign-On di Okta con autenticazione a più fattori (MFA). 
    + Per la configurazione di Single Sign-On di Okta, immettere **Okta**. Si tratta del metodo di autenticazione utilizzato dal driver ODBC per eseguire l'autenticazione mediante Single Sign-On di Okta. 
  + Per **uid**, immettere ***your-okta-username***. Si tratta del nome utente dell'account Okta che si sta utilizzando per Single Sign-On con autorizzazioni per il cluster a cui si sta tentando di autenticarsi. Utilizzare solo se **plugin\$1name** è **Okta**.
  + Per **PWD**, immettere ***your-okta-password***. Utilizzare solo se **plugin\$1name** è **Okta**. 
  + Per **login\$1url**, immettere ***your-login-url***. Questo è l'URL Single Sign-On di avvio che restituisce la risposta SAML. Questo si applica solo al plugin Browser SAML.
  + In **idp\$1response\$1timeout**, immettere ***the-number-of-seconds***. Questo è il periodo di tempo specificato, in secondi, da PingOne cui attendere la risposta. Questo si applica solo al plugin Browser SAML.
  + Per **listen\$1port**, immettere ***your-listen-port***. Questa è la porta ascoltata dal server locale. Il valore predefinito è 7890. Questo si applica solo al plugin Browser SAML.

  Su macOS e Linux, modificare anche le impostazioni del profilo per aggiungere le seguenti esportazioni.

  ```
  export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
  ```

  ```
  export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini
  ```

------