

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

# Abilita connessioni crittografate per le istanze DB PostgreSQL in Amazon RDS
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds"></a>

*Rohit Kapoor, Amazon Web Services*

## Riepilogo
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-summary"></a>

Amazon Relational Database Service (Amazon RDS) supporta la crittografia SSL per le istanze DB PostgreSQL. Utilizzando SSL, puoi crittografare una connessione PostgreSQL tra le tue applicazioni e le istanze DB di Amazon RDS for PostgreSQL. Per impostazione predefinita, Amazon RDS SSL/TLS for PostgreSQL utilizza e prevede che tutti i client si connettano utilizzando la crittografia. SSL/TLS Amazon RDS per PostgreSQL supporta le versioni TLS 1.1 e 1.2.

Questo modello descrive come abilitare le connessioni crittografate per un'istanza DB Amazon RDS for PostgreSQL. Puoi utilizzare lo stesso processo per abilitare le connessioni crittografate per Amazon Aurora PostgreSQL Compatible Edition.

## Prerequisiti e limitazioni
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-prereqs"></a>
+ Un account AWS attivo
+ Un'[istanza DB Amazon RDS per PostgreSQL](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_RDS_Configuring.html)
+ [Un](https://www.postgresql.org/docs/current/ssl-tcp.html) pacchetto SSL

## Architecture
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-architecture"></a>

![Abilitazione di connessioni crittografate per istanze DB PostgreSQL in Amazon RDS](https://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/4f87c6a3-b4ff-4248-96d3-a4a498659735/images/ccc5c880-1191-4c12-a255-6908b96b96a5.png)


## Tools (Strumenti)
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-tools"></a>
+ [pgAdmin](https://www.pgadmin.org/) è una piattaforma di amministrazione e sviluppo open source per PostgreSQL. Puoi usare pgAdmin su Linux, Unix, macOS e Windows per gestire gli oggetti del database in PostgreSQL 10 e versioni successive.
+ Gli editor di [PostgreSQL](https://wiki.postgresql.org/wiki/PostgreSQL_Clients) forniscono un'interfaccia più intuitiva per aiutarti a creare, sviluppare ed eseguire query e modificare il codice in base alle tue esigenze.

## Best practice
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-best-practices"></a>
+ Monitora le connessioni non sicure al database.
+ Verifica i diritti di accesso al database.
+ Assicurati che i backup e le istantanee siano crittografati quando sono inattivi.
+ Monitora l'accesso al database.
+ Evita i gruppi di accesso senza restrizioni.
+ Migliora le tue notifiche con [Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/what-is-guardduty.html).
+ Monitora regolarmente l'aderenza alle politiche.

## Epiche
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-epics"></a>

### Scarica un certificato affidabile e importalo nel tuo negozio di fiducia
<a name="download-a-trusted-certificate-and-import-it-into-your-trust-store"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Carica un certificato affidabile sul tuo computer. | Per aggiungere certificati all'archivio Trusted Root Certification Authorities del computer, procedi nel seguente modo. (Queste istruzioni utilizzano Windows Server come esempio.)1. In Windows Server, scegliete **Start**, **Esegui**, quindi digitate **mmc**.<br />2. Nella console, scegli **File**, **Aggiungi/Rimuovi snap-in**.<br />3. **In **Snap-in disponibili**, scegli **Certificati, quindi scegli Aggiungi**.**<br />4. **In **Questo snap-in gestirà sempre i certificati per**, scegli **Account computer**, Avanti.**<br />5. Scegli **Computer locale**, **Fine.**<br />6. **Se non hai altri snap-in da aggiungere alla console, scegli OK.**<br />7. **Nell'albero della console, fai doppio clic su Certificati.**<br />8. Fate clic con il pulsante destro **del mouse su Trusted**<br />9. Scegli **Tutte le attività**, **Importa** per importare i certificati scaricati.<br />10. Segui i passaggi della procedura guidata di importazione dei certificati. | DevOps ingegnere, ingegnere addetto alla migrazione, DBA | 

### Forza le connessioni SSL
<a name="force-ssl-connections"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Creare un gruppo di parametri e impostare il parametro rds.force\_ssl. | Se l'istanza DB PostgreSQL ha un gruppo di parametri personalizzato, modifica il gruppo di parametri e passa a 1. `rds.force_ssl`<br />Se l'istanza DB utilizza il gruppo di parametri predefinito che non è `rds.force_ssl` abilitato, crea un nuovo gruppo di parametri. Puoi modificare il nuovo gruppo di parametri utilizzando l'API Amazon RDS o manualmente come indicato nelle seguenti istruzioni.<br />Per creare un nuovo gruppo di parametri:1. Accedi alla console di gestione AWS e apri [la console Amazon RDS](https://console.aws.amazon.com/rds/) per la regione AWS che ospita l'istanza DB.<br />2. Nel riquadro di navigazione scegliere **Parameter groups (Gruppi di parametri)**.<br />3. Scegli **Crea gruppo di parametri** e imposta i seguenti valori: Per la **famiglia di gruppi di parametri**, scegli **postgres14**.<database\_instance>Per **Nome gruppo**, digita **pgsql** - -ssl.In **Descrizione**, inserisci una descrizione in formato libero per il gruppo di parametri che stai aggiungendo.Scegli **Create** (Crea).<br />4. Scegli il gruppo di parametri che hai creato.<br />5. Da **Parameter group actions (Operazioni gruppo di parametri)** scegliere **Edit (Modifica)**.<br />6. **Trova **rds.force\_ssl** e modificane l'impostazione su 1.**Esegui test sul lato client prima di modificare questo parametro.<br />7. Scegli **Save changes** (Salva modifiche).<br />Per associare il gruppo di parametri alla tua istanza DB PostgreSQL:1. Sulla console Amazon RDS, nel riquadro di navigazione, scegli **Database**, quindi scegli l'istanza DB PostgreSQL.<br />2. Scegli **Modifica**.<br />3. **In **Configurazione aggiuntiva**, scegli il nuovo gruppo di parametri, quindi scegli Continua.**<br />4. In **Pianifica modifiche**, scegli **Applica immediatamente**.<br />5. Scegliere **Modify DB Instance (Modifica istanza database)**.<br />Per ulteriori informazioni, consulta la [documentazione di Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithDBInstanceParamGroups.html). | DevOps ingegnere, ingegnere addetto alla migrazione, DBA | 
| Forza le connessioni SSL. | Connettiti all'istanza DB Amazon RDS for PostgreSQL. I tentativi di connessione che non utilizzano SSL vengono rifiutati con un messaggio di errore. Per ulteriori informazioni, consulta la [documentazione di Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Concepts.General.SSL.html#PostgreSQL.Concepts.General.SSL.Requiring). | DevOps ingegnere, ingegnere addetto alla migrazione, DBA | 

### Installa l'estensione SSL
<a name="install-ssl-extension"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Installa l'estensione SSL. | 1. Avvia una connessione psql o pgAdmin come DBA.<br />2. Chiamate la funzione **ssl\_is\_used () per determinare se viene utilizzato** SSL.<pre>select ssl_is_used();</pre><br />La funzione restituisce `t` se la connessione utilizza SSL; in caso contrario, restituisce. `f`<br />3. Installa l'estensione SSL.<pre>create extension sslinfo;<br />show ssl;<br />select ssl_cipher();</pre>Per ulteriori informazioni, consulta la [documentazione di Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Concepts.General.SSL.html). | DevOps ingegnere, ingegnere addetto alla migrazione, DBA | 

### Configura il tuo client PostgreSQL per SSL
<a name="configure-your-postgresql-client-for-ssl"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura un client per SSL. | Utilizzando SSL, è possibile avviare il server PostgreSQL con il supporto per connessioni crittografate che utilizzano i protocolli TLS. Il server ascolta le connessioni standard e SSL sulla stessa porta TCP e negozia con qualsiasi client connesso se utilizzare SSL. Per impostazione predefinita, questa è un'opzione client.<br />Se stai usando il client psql:1. Assicurati che il certificato Amazon RDS sia stato caricato sul tuo computer locale.<br />2. Avvia una connessione client SSL aggiungendo quanto segue:<pre>psql postgres -h SOMEHOST.amazonaws.com -p 8192 -U someuser sslmode=verify-full sslrootcert=rds-ssl-ca-cert.pem<br />select ssl_cipher();</pre><br />Per altri client PostgreSQL:+ Modifica il rispettivo parametro della chiave pubblica dell'applicazione. Questo potrebbe essere disponibile come opzione, come parte della stringa di connessione o come proprietà nella pagina di connessione negli strumenti della GUI. <br />Consulta le seguenti pagine per questi client:+ [Documentazione pgAdmin](https://www.pgadmin.org/docs/)<br />+ [Documentazione JDBC](https://jdbc.postgresql.org/documentation/ssl/) | DevOps ingegnere, ingegnere addetto alla migrazione, DBA | 

## risoluzione dei problemi
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Impossibile scaricare il certificato SSL. | Verifica la connessione al sito Web e riprova a scaricare il certificato sul computer locale. | 

## Risorse correlate
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-resources"></a>
+ [Documentazione Amazon RDS per PostgreSQL](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html)
+ [Utilizzo di SSL con un'istanza DB PostgreSQL (documentazione Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Concepts.General.SSL.html))
+ [ TCP/IP Connessioni sicure con SSL](https://www.postgresql.org/docs/9.1/ssl-tcp.html) (documentazione PostgreSQL)
+ [Utilizzo di SSL](https://jdbc.postgresql.org/documentation/ssl/) (documentazione JDBC)