Configurazione dell'autenticazione e di SSL - Amazon Redshift

Amazon Redshift non supporterà più la creazione di nuove UDF Python a partire dal 1º novembre 2025. Se desideri utilizzare le UDF Python, creale prima di tale data. Le UDF Python esistenti continueranno a funzionare normalmente. Per ulteriori informazioni, consulta il post del blog.

Configurazione dell'autenticazione e di SSL

Per proteggere i dati da accessi non autorizzati, gli archivi dati di Amazon Redshift richiedono l'autenticazione di tutte le connessioni tramite le credenziali utente. Alcuni archivi dati richiedono inoltre connessioni tramite il protocollo Secure Sockets Layer (SSL), con o senza autenticazione unidirezionale.

Il driver JDBC versione 2.x di Amazon Redshift fornisce il supporto completo per questi protocolli di autenticazione.

La versione SSL supportata dal driver dipende dalla versione JVM che si sta utilizzando. Per ulteriori informazioni sulle versioni SSL supportate da ogni versione di Java, consultare Diagnosi di TLS, SSL e HTTPS sul blog di gestione prodotti del gruppo di piattaforme Java.

La versione SSL utilizzata per la connessione è la versione più alta supportata sia dal driver che dal server e viene determinata al momento della connessione.

Configura il driver JDBC versione 2.x di Amazon Redshift per autenticare la connessione in base ai requisiti di sicurezza del server Redshift a cui stai effettuando la connessione.

Per autenticare la connessione, devi sempre specificare il nome utente e la password di Redshift. A seconda che SSL sia abilitato e necessario sul server, potresti dover configurare il driver per la connessione tramite SSL. Oppure potrebbe essere necessario utilizzare l'autenticazione SSL unidirezionale in modo che il client (il driver stesso) verifichi l'identità del server.

Le informazioni di configurazione vengono fornite al driver nell'URL di connessione. Per ulteriori informazioni sulla sintassi dell'URL di connessione, consultare Creazione dell'URL di connessione.

SSL indica TLS/SSL, ovvero sia Transport Layer Security che Secure Sockets Layer. Il driver supporta le versioni standard di settore di TLS/SSL.

Configurazione dell'autenticazione IAM

Se ci si connette a un server Amazon Redshift tramite l'autenticazione IAM, impostare le seguenti proprietà come parte della stringa di connessione all'origine dati.

Per ulteriori informazioni sull'autenticazione IAM, consultare Identity and Access Management in Amazon Redshift.

Per utilizzare l'autenticazione IAM, utilizzare uno dei seguenti formati di stringa di connessione:

Stringa di connessione Descrizione

jdbc:redshift:iam:// [host]:[port]/[db]

Una stringa di connessione normale. Il driver deduce il ClusterID e la regione dall'host.

jdbc:redshift:iam:// [cluster-id]: [region]/[db]

Il driver recupera le informazioni sull'host, dato il ClusterID e la regione.

jdbc:redshift:iam:// [host]/[db]

Il driver utilizza di default la porta 5439 e recupera ClusterID e regione dall'host. A seconda della porta selezionata durante la creazione, la modifica o la migrazione del cluster, consenti l'accesso alla porta selezionata.

Specifica di profili

Se si utilizza l'autenticazione IAM, è possibile specificare eventuali altre proprietà di connessione obbligatorie o facoltative sotto il nome di un profilo. In questo modo, è possibile evitare di inserire determinate informazioni direttamente nella stringa di connessione. Il nome del profilo viene specificato nella stringa di connessione utilizzando la proprietà Profile.

I profili possono essere aggiunti al file delle credenziali AWS. Il percorso predefinito per questo file è .: ~/.aws/credentials

È possibile modificare il valore predefinito impostando il percorso nella seguente variabile di ambiente: AWS_CREDENTIAL_PROFILES_FILE

Per ulteriori informazioni sui profili, consultare Utilizzo delle credenziali AWS nella AWS SDK per Java.

Utilizzo delle credenziali del profilo dell'istanza

Se si sta eseguendo un'applicazione su un'istanza Amazon EC2 associata a un ruolo IAM, è possibile connettersi utilizzando le credenziali del profilo dell'istanza.

A tale scopo utilizza uno dei formati di stringa di connessione IAM della tabella precedente e imposta la proprietà di connessione dbuser sul nome utente Amazon Redshift con cui ti connetti.

Per ulteriori informazioni sui profili dell'istanza, consultare Gestione degli accessi nella Guida per l'utente di IAM.

Utilizzo di provider di credenziali

Il driver supporta inoltre i plug-in del provider di credenziali dei seguenti servizi:

  • Centro identità AWS IAM

  • Active Directory Federation Service (ADFS)

  • Servizio JSON Web Tokens (JWT)

  • Servizio Microsoft Azure Active Directory (AD) e servizio Browser Microsoft Azure Active Directory (AD)

  • Servizio Okta

  • Servizio PingFederate

  • Browser SAML per servizi SAML quali Okta, Ping o ADFS

Se si utilizza uno di questi servizi, l'URL di connessione deve specificare le proprietà seguenti:

  • Plugin_Name: la variabile classpath completa per la classe di plug-in del provider di credenziali.

  • IdP_Host:: l'host del servizio che si sta utilizzando per autenticarsi in Amazon Redshift.

  • IdP_Port: la porta su cui l'host del servizio di autenticazione è in ascolto. Non richiesta per Okta.

  • User: il nome utente per il server idp_host.

  • Password: la password associata al nome utente idp_host.

  • DbUser: il nome utente di Amazon Redshift con cui ti stai connettendo.

  • SSL_Insecure: indica se il certificato del server IDP deve essere verificato.

  • Client_ID: l’ID client associato al nome utente nel portale di Azure AD. Utilizzata solo per Azure AD.

  • Client_Secret: il segreto client associato all'ID client nel portale di Azure AD. Utilizzata solo per Azure AD.

  • IdP_Tenant: l'ID tenant di Azure AD per l'applicazione Amazon Redshift. Utilizzata solo per Azure AD.

  • App_ID: l'ID dell'app Okta per l'applicazione Amazon Redshift. Utilizzata solo per Okta.

  • App_Name: il nome dell'app Okta per l'applicazione Amazon Redshift. Utilizzata solo per Okta.

  • Partner_SPID: il valore facoltativo dello SPID (Service Provider ID) del partner. Utilizzata solo per PingFederate.

  • Idc_Region: la Regione AWS in cui si trova l’istanza di Centro identità AWS IAM. Utilizzato solo per Centro identità AWS IAM.

  • Issuer_Url: l’endpoint dell’istanza del server Centro identità AWS IAM. Utilizzato solo per Centro identità AWS IAM.

Se si utilizza un plug-in per il browser per uno di questi servizi, l'URL di connessione può includere anche:

  • Login_URL: l'URL della risorsa sul sito Web del provider di identità quando si usa il linguaggio SAML (Security Assertion Markup Language) o i servizi di Azure AD tramite un plug-in del browser. Questo parametro è obbligatorio se si utilizza un plug-in del browser.

  • Listen_Port: la porta utilizzata dal driver per ottenere la risposta SAML dal provider di identità quando utilizzi i servizi SAML, Azure AD o Centro identità AWS IAM tramite un plugin del browser.

  • IdP_Response_Timeout: la quantità di tempo, espressa in secondi, per cui il driver attende la risposta SAML dal provider di identità quando utilizzi i servizi SAML, Azure AD o Centro identità AWS IAM tramite un plugin del browser.

Per informazioni sulle proprietà aggiuntive della stringa di connessione, consultare Opzioni per la configurazione del driver JDBC versione 2.x.