Rotazione del certificatoSSL/TLS - Amazon Relational Database Service

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

Rotazione del certificatoSSL/TLS

I certificati Amazon RDS Certificate Authority rds-ca-2019 scadranno ad agosto 2024. Se utilizzi o prevedi di utilizzare Secure Sockets Layer (SSL) o Transport Layer Security (TLS) con verifica del certificato per connetterti alle tue istanze DB o ai cluster RDS DB Multi-AZ, prendi in considerazione l'utilizzo di uno dei nuovi certificati CA 2048-g1, 4096-g1 o 384-g1. rds-ca-rsa rds-ca-rsa rds-ca-ecc Se attualmente non utilizziSSL/TLScon la verifica del certificato, potresti avere ancora un certificato CA scaduto e devi aggiornarlo con un nuovo certificato CA se prevedi di utilizzareSSL/TLScon verifica del certificato per connetterti ai tuoi database. RDS

Amazon RDS fornisce nuovi certificati CA come AWS best practice in materia di sicurezza. Per informazioni sui nuovi certificati e sui certificati supportati AWS Regioni, vedi.

Per aggiornare il certificato CA per il tuo database, utilizza i seguenti metodi:

Prima di aggiornare le istanze DB o i cluster DB Multi-AZ per utilizzare il nuovo certificato CA, assicurati di aggiornare i client o le applicazioni che si connettono ai database. RDS

Considerazioni sulla rotazione dei certificati

Considerate le seguenti situazioni prima di ruotare il certificato:

  • Amazon RDS Proxy utilizza certificati di AWS Certificate Manager (ACM). Se si utilizza RDS Proxy, quando si ruota il TLS certificatoSSL/, non è necessario aggiornare le applicazioni che utilizzano connessioni RDS Proxy. Per ulteriori informazioni, consulta Utilizzo diTLS/SSLcon Proxy RDS.

  • Se utilizzi un'applicazione Go versione 1.15 con un'istanza DB o un cluster DB Multi-AZ creato o aggiornato al certificato rds-ca-2019 prima del 28 luglio 2020, devi aggiornare nuovamente il certificato.

    Utilizzate il modify-db-instance comando per un'istanza DB o il comando per un cluster DB Multi-AZ, utilizzando il nuovo identificatore di certificato CA. modify-db-cluster Puoi trovare CAs quelli disponibili per uno specifico motore DB e una versione del motore DB utilizzando il describe-db-engine-versions comando.

    Se hai creato il database o aggiornato il relativo certificato dopo il 28 luglio 2020, non è richiesta alcuna azione. Per ulteriori informazioni, consulta il GitHub numero #39568 di Go.

Aggiornamento del certificato CA modificando l'istanza o il cluster di database

L'esempio seguente aggiorna il certificato CA da rds-ca-2019 a 2048-g1. rds-ca-rsa Puoi scegliere un certificato diverso. Per ulteriori informazioni, consulta Autorità di certificazione.

Aggiorna il trust store dell'applicazione per ridurre i tempi di inattività associati all'aggiornamento del certificato CA. Per ulteriori informazioni sui riavvii associati alla rotazione dei certificati CA, consultaRotazione automatica dei certificati del server.

Per aggiornare il certificato CA modificando l'istanza o il cluster DB
  1. Scarica il nuovo TLS certificatoSSL/come descritto in.

  2. Aggiorna le tue applicazioni per utilizzare il nuovo TLS certificato SSL /.

    I metodi per aggiornare le applicazioni per i nuovi TLS certificatiSSL/dipendono dalle applicazioni specifiche. Collabora con gli sviluppatori delle tue applicazioni per aggiornare i TLS certificatiSSL/per le tue applicazioni.

    Per informazioni sul controllo delle TLS connessioni SSL /e sull'aggiornamento delle applicazioni per ogni motore DB, consultate i seguenti argomenti:

    Per uno script di esempio che aggiorna un archivio di trust in un sistema operativo Linux, vedi Script di esempio per l'importazione di certificati nel tuo archivio di trust.

    Nota

    Il bundle di certificati contiene certificati per la vecchia e la nuova CA, pertanto puoi aggiornare l'applicazione in modo sicuro e mantenere la connettività durante il periodo di transizione. Se si utilizza il AWS Database Migration Service per migrare un database verso un'istanza DB o un cluster di , si consiglia di utilizzare il pacchetto di certificati per garantire la connettività durante la migrazione.

  3. Modifica l'istanza DB o il cluster DB Multi-AZ per cambiare la CA da rds-ca-2019 a 2048-g1. rds-ca-rsa Per verificare se il database richiede un riavvio per aggiornare i certificati CA, utilizza il comando e seleziona il flag. describe-db-engine-versionsSupportsCertificateRotationWithoutRestart

    Importante

    Se riscontri problemi di connettività dopo la scadenza del certificato, utilizza l'opzione Applica immediatamente specificando Applica immediatamente nella console o specificando l'opzione utilizzando il --apply-immediately AWS CLI. Per impostazione predefinita, l'esecuzione di questa operazione è pianificata durante la prossima finestra di manutenzione.

    Per impostare un'eccezione per la CA dell'istanza di diversa dalla RDS CA predefinita, utilizza il comando modify-certificatesCLI.

Puoi utilizzare il plugin AWS Management Console o il AWS CLI per modificare il certificato CA da rds-ca-2019 a rds-ca-rsa 2048-g1 per un'istanza DB o un cluster DB Multi-AZ.

Console
  1. Accedi a AWS Management Console e apri la RDS console Amazon all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione, scegli Database, quindi scegli l'istanza DB o il cluster DB Multi-AZ che desideri modificare.

  3. Scegli Modifica.

    Modifica l'istanza DB o il cluster DB Multi-AZ
  4. Nella sezione Connettività, scegli rds-ca-rsa2048-g1.

    Scegliere certificato CA
  5. Scegliere Continue (Continua) e controllare il riepilogo delle modifiche.

  6. Per applicare immediatamente le modifiche, scegliere Apply immediately (Applica immediatamente).

  7. Nella pagina di conferma esaminare le modifiche. Se sono corrette, scegli Modifica istanza DB o Modifica cluster per salvare le modifiche.

    Importante

    Quando si pianifica questa operazione, accertarsi di aver aggiornato in anticipo l'archivio di trust lato client.

    Oppure scegliere Back (Indietro) per cambiare le modifiche o Cancel (Annulla) per annullare le modifiche.

AWS CLI

Per utilizzare nuovamente il plugin AWS CLI per modificare la CA da rds-ca-2019 a rds-ca-rsa2048-g1 per un'istanza DB o un cluster DB Multi-AZ, chiama il comando or. modify-db-instancemodify-db-cluster Specificare l'identificatore dell'istanza DB o del cluster e l'opzione. --ca-certificate-identifier

Utilizzate il --apply-immediately parametro per applicare immediatamente l'aggiornamento. Per impostazione predefinita, questa operazione è pianificata per l'esecuzione durante la prossima finestra di manutenzione.

Importante

Quando si pianifica questa operazione, accertarsi di aver aggiornato in anticipo l'archivio di trust lato client.

Istanza database

L'esempio seguente esegue la modifica mydbinstance impostando il certificato CA surds-ca-rsa2048-g1.

In Linux, macOS, oppure Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --ca-certificate-identifier rds-ca-rsa2048-g1

In Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --ca-certificate-identifier rds-ca-rsa2048-g1
Nota

Se l'istanza richiede il riavvio, è possibile utilizzare il modify-db-instanceCLIcomando e specificare l'--no-certificate-rotation-restartopzione.

Cluster DB Multi-AZ

L'esempio seguente viene modificato mydbcluster impostando il certificato CA su. rds-ca-rsa2048-g1

In Linux, macOS, oppure Unix:

aws rds modify-db-cluster \ --db-cluster-identifier mydbcluster \ --ca-certificate-identifier rds-ca-rsa2048-g1

In Windows:

aws rds modify-db-cluster ^ --db-cluster-identifier mydbcluster ^ --ca-certificate-identifier rds-ca-rsa2048-g1

Aggiornamento del certificato CA mediante l'applicazione di manutenzione

Esegui i passaggi seguenti per aggiornare il certificato CA applicando la manutenzione.

Console
Per aggiornare il certificato CA applicando la manutenzione
  1. Accedi al AWS Management Console e apri la RDS console Amazon all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione, scegli Aggiornamento del certificato.

    Opzione del pannello di navigazione di rotazione del certificato

    Viene visualizzata la pagina Database con aggiornamento certificati richiesto.

    Aggiorna il certificato CA per il database
    Nota

    Questa pagina mostra solo le istanze e i cluster DB per la versione corrente Regione AWS. Se hai database in più di uno Regione AWS, controlla questa pagina in ciascuno Regione AWS per vedere tutte le istanze DB con vecchi TLS certificati SSL /.

  3. Scegli l'istanza DB o il cluster DB Multi-AZ che desideri aggiornare.

    È possibile pianificare la rotazione dei certificati per la finestra di manutenzione successiva scegliendo Pianifica. Applica immediatamente la rotazione scegliendo Applica ora.

    Importante

    Se si verificano problemi di connettività dopo la scadenza del certificato, utilizza l'opzione Applica ora.

    1. Se scegli Pianifica, ti viene richiesto di confermare la rotazione dei certificati CA. Nella richiesta viene indicato anche la finestra pianificata per l'aggiornamento.

      Conferma della rotazione del certificato
    2. Se scegli Applica ora, ti viene richiesto di confermare la rotazione dei certificati CA.

      Conferma della rotazione del certificato
    Importante

    Prima di pianificare la rotazione dei certificati CA sul database, aggiorna tutte le applicazioni client che utilizzanoSSL/TLSe il certificato del server per la connessione. Questi aggiornamenti sono specifici per il motore DB. Dopo avere aggiornato queste applicazioni client, è possibile confermare la rotazione del certificato CA.

    Per continuare, scegliere la casella di controllo e quindi scegliere Confirm (Conferma).

  4. Ripeti i passaggi 3 e 4 per ogni istanza DB e cluster che desideri aggiornare.

Rotazione automatica dei certificati del server

Se la CA principale supporta la rotazione automatica dei certificati del server, gestisce RDS automaticamente la rotazione del certificato del server DB. RDSutilizza la stessa CA principale per questa rotazione automatica, quindi non è necessario scaricare un nuovo pacchetto CA. Per informazioni, consulta Autorità di certificazione.

La rotazione e la validità del certificato del server di database dipendono dal motore di database:

  • Se il tuo motore DB supporta la rotazione senza riavvio, ruota RDS automaticamente il certificato del server DB senza richiedere alcuna azione da parte tua. RDStenta di ruotare il certificato del server DB nella finestra di manutenzione preferita al DB Server Certificate Half Life. Il nuovo certificato del server di database è valido per 12 mesi.

  • Se il tuo motore DB non supporta la rotazione senza riavvio, ti RDS avvisa di un evento di manutenzione almeno 6 mesi prima della scadenza del certificato del server DB. Il nuovo certificato del server di database è valido per 36 mesi.

Usa il describe-db-engine-versionscomando e controlla il SupportsCertificateRotationWithoutRestart flag per identificare se la versione del motore DB supporta la rotazione del certificato senza riavvio. Per ulteriori informazioni, consulta Impostazione della CA per il database.

Script di esempio per l'importazione di certificati nel tuo archivio di trust

Di seguito sono riportati script di shell di esempio che importano il bundle di certificati in un archivio di trust.

Ogni script di shell di esempio utilizza keytool, che fa parte del Java Development Kit (). JDK Per informazioni sull'installazione diJDK, vedere la Guida JDK all'installazione.

Linux

Il seguente script è uno script di esempio shell che importa il bundle di certificati in un archivio di trust su un sistema operativo Linux.

mydir=tmp/certs if [ ! -e "${mydir}" ] then mkdir -p "${mydir}" fi truststore=${mydir}/rds-truststore.jks storepassword=changeit curl -sS "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" > ${mydir}/global-bundle.pem awk 'split_after == 1 {n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1}{print > "rds-ca-" n+1 ".pem"}' < ${mydir}/global-bundle.pem for CERT in rds-ca-*; do alias=$(openssl x509 -noout -text -in $CERT | perl -ne 'next unless /Subject:/; s/.*(CN=|CN = )//; print') echo "Importing $alias" keytool -import -file ${CERT} -alias "${alias}" -storepass ${storepassword} -keystore ${truststore} -noprompt rm $CERT done rm ${mydir}/global-bundle.pem echo "Trust store content is: " keytool -list -v -keystore "$truststore" -storepass ${storepassword} | grep Alias | cut -d " " -f3- | while read alias do expiry=`keytool -list -v -keystore "$truststore" -storepass ${storepassword} -alias "${alias}" | grep Valid | perl -ne 'if(/until: (.*?)\n/) { print "$1\n"; }'` echo " Certificate ${alias} expires in '$expiry'" done
macOS

Il seguente script è uno script di shell di esempio che importa il bundle di certificati in un archivio di trust su un sistema operativo Linux.

mydir=tmp/certs if [ ! -e "${mydir}" ] then mkdir -p "${mydir}" fi truststore=${mydir}/rds-truststore.jks storepassword=changeit curl -sS "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" > ${mydir}/global-bundle.pem split -p "-----BEGIN CERTIFICATE-----" ${mydir}/global-bundle.pem rds-ca- for CERT in rds-ca-*; do alias=$(openssl x509 -noout -text -in $CERT | perl -ne 'next unless /Subject:/; s/.*(CN=|CN = )//; print') echo "Importing $alias" keytool -import -file ${CERT} -alias "${alias}" -storepass ${storepassword} -keystore ${truststore} -noprompt rm $CERT done rm ${mydir}/global-bundle.pem echo "Trust store content is: " keytool -list -v -keystore "$truststore" -storepass ${storepassword} | grep Alias | cut -d " " -f3- | while read alias do expiry=`keytool -list -v -keystore "$truststore" -storepass ${storepassword} -alias "${alias}" | grep Valid | perl -ne 'if(/until: (.*?)\n/) { print "$1\n"; }'` echo " Certificate ${alias} expires in '$expiry'" done