

 Amazon Redshift non supporterà più la creazione di nuove UDF Python a partire dalla Patch 198. Le UDF Python esistenti continueranno 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à.

# AD FS
<a name="setup-identity-provider-adfs"></a>

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

## Fase 1: configura AD FS e il AWS account per fidarsi l'uno dell'altro
<a name="setup-identity-provider-adfs-trust"></a>

 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-"));
      ```

      Prendere nota degli ARN del provider SAML e del 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
<a name="setup-identity-provider-adfs-auth"></a>

------
#### [ 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. Durante la configurazione SQLWorkbench/J, l'URL del database utilizza il seguente formato.

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

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

  1. Avvia SQL Workbench/J. Nella pagina **Select Connection Profile (Seleziona profilo connessione)**, aggiungere un **Profile Group (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\_name**, 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\_name**, 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\_name** è **ADFS**.
  + Per **PWD**, immettere **{{your-adfs-password}}**. Utilizzare solo se **plugin\_name** è **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
  ```

------