Rileva le istanze di database Amazon RDS e Aurora con certificati CA in scadenza - Prontuario AWS

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

Rileva le istanze di database Amazon RDS e Aurora con certificati CA in scadenza

Creato da Stephen DiCato (AWS) e Eugene Shifer (AWS)

Riepilogo

Come best practice di sicurezza, si consiglia di crittografare i dati in transito tra i server delle applicazioni e i database relazionali. È possibile utilizzare SSL o TLS per crittografare una connessione a un'istanza o un cluster di database (DB). Questi protocolli aiutano a garantire riservatezza, integrità e autenticità tra un'applicazione e un database. Il database utilizza un certificato server, rilasciato da un'autorità di certificazione (CA) e utilizzato per eseguire la verifica dell'identità del server. SSL o TLS verifica l'autenticità del certificato convalidandone la firma digitale e assicurandosi che non sia scaduto.

Nel AWS Management Console, Amazon Relational Database Service (Amazon RDS) e Amazon Aurora forniscono notifiche sulle istanze DB che richiedono aggiornamenti dei certificati. Tuttavia, per verificare la presenza di queste notifiche, è necessario accedere a ciascuna di esse Account AWS e accedere alla console di servizio di ciascuna di esse. Regione AWS Questa attività diventa più complessa se è necessario valutare la validità dei certificati per molti Account AWS certificati gestiti come organizzazione in AWS Organizations.

Effettuando il provisioning dell'infrastruttura come codice (IaC) fornita in questo modello, puoi rilevare i certificati CA in scadenza per tutte le istanze DB Amazon RDS e Aurora della tua organizzazione. Account AWS AWS Il AWS CloudFormationmodello fornisce tutte le AWS Config regole, le funzioni e le autorizzazioni necessarie AWS Lambda . È possibile distribuirlo in un singolo account come stack oppure distribuirlo in tutta l' AWS organizzazione come set di stack.

Prerequisiti e limitazioni

Prerequisiti

  • Un attivo Account AWS

  • Se stai distribuendo in un'unica Account AWS soluzione:

    • Assicurati di disporre delle autorizzazioni per creare CloudFormation pile.

    • Abilita AWS Config nell'account di destinazione.

    • (Facoltativo) Abilita AWS Security Hub nell'account di destinazione.

  • Se ti stai distribuendo in un' AWS organizzazione:

    • Assicurati di disporre delle autorizzazioni per creare set di CloudFormation stack.

    • Abilita Security Hub con AWS Organizations integrazione.

    • Abilita questa soluzione AWS Config negli account in cui stai implementando questa soluzione.

    • Account AWS Designare un amministratore delegato di AWS Config Sand Security Hub.

Limitazioni

  • Se esegui la distribuzione su un account individuale che non ha Security Hub abilitato, puoi utilizzarlo AWS Config per valutare i risultati.

  • Se stai eseguendo la distribuzione in un'organizzazione che non dispone di un amministratore delegato per AWS Config Security Hub, devi accedere agli account dei singoli membri per visualizzare i risultati.

  • Se lo utilizzi AWS Control Tower per gestire e governare gli account della tua organizzazione, implementa l'IaC secondo questo schema utilizzando Customizations for (cFCT). AWS Control Tower L'utilizzo della CloudFormation console creerà differenze di configurazione e richiederà la nuova AWS Control Tower registrazione delle unità organizzative () o degli account gestiti. OUs

  • Alcuni Servizi AWS non sono disponibili in tutti. Regioni AWS Per informazioni sulla disponibilità regionale, consulta la pagina Endpoint e quote del servizio e scegli il link relativo al servizio.

Architettura

Implementazione in un individuo Account AWS

Il seguente diagramma di architettura mostra l'implementazione delle AWS risorse all'interno di una singola unità. Account AWS Viene implementato utilizzando un CloudFormation modello direttamente tramite la CloudFormation console. Se Security Hub è abilitato, puoi visualizzare i risultati in uno AWS Config o in Security Hub. Se Security Hub non è abilitato, puoi visualizzare i risultati solo nella AWS Config console.

Distribuzione del CloudFormation modello fornito in un unico account.

Il diagramma mostra i seguenti passaggi:

  1. Crei una CloudFormation pila. Questo implementa una funzione Lambda e AWS Config una regola. Sia la regola che la funzione sono configurate con le autorizzazioni AWS Identity and Access Management (IAM) necessarie per pubblicare le valutazioni delle risorse nei AWS Config log.

  2. La AWS Config regola funziona in modalità di valutazione investigativa e viene eseguita ogni 24 ore.

  3. Security Hub riceve tutti i AWS Config risultati.

  4. È possibile visualizzare i risultati in Security Hub o in AWS Config, a seconda della configurazione dell'account.

Implementazione in un'organizzazione AWS

Il diagramma seguente mostra la valutazione della scadenza dei certificati su più account gestiti tramite AWS Organizations e. AWS Control Tower Il CloudFormation modello viene distribuito tramite cFCT. I risultati della valutazione sono centralizzati in Security Hub nell'account amministratore delegato. Il AWS CodePipeline flusso di lavoro illustrato nel diagramma mostra i passaggi di base che si verificano durante l'implementazione di cFCT.

Distribuzione del CloudFormation modello fornito su più account in un'organizzazione AWS.

Il diagramma mostra i seguenti passaggi:

  1. A seconda della configurazione per cFct, nell'account di gestione, si invia l'IaC a un AWS CodeCommit repository o si carica un file compresso (ZIP) dell'IaC in un bucket Amazon Simple Storage Service (Amazon S3).

  2. La pipeline cFct decomprime il file, esegue i controlli cfn-nag () e lo distribuisce come set di stack. GitHub CloudFormation

  3. A seconda della configurazione specificata nel file manifest cFct, distribuisce gli stack in account individuali o specificati. CloudFormation StackSets OUs Questo implementa una funzione Lambda e AWS Config una regola negli account di destinazione. Sia la regola che la funzione sono configurate con le autorizzazioni IAM necessarie per pubblicare le valutazioni delle risorse nei AWS Config log.

  4. La AWS Config regola funziona in modalità di valutazione investigativa e viene eseguita ogni 24 ore.

  5. AWS Config inoltra tutti i risultati a Security Hub.

  6. I risultati di Security Hub vengono aggregati nell'account amministratore delegato.

  7. È possibile visualizzare i risultati in Security Hub nell'account amministratore delegato.

Strumenti

Servizi AWS

  • AWS CloudFormationti aiuta a configurare AWS le risorse, a fornirle in modo rapido e coerente e a gestirle durante tutto il loro ciclo di vita in Account AWS tutte le regioni.

  • AWS Configfornisce una visione dettagliata delle risorse disponibili Account AWS e di come sono configurate. Ti aiuta a identificare in che modo le risorse sono correlate tra loro e in che modo le loro configurazioni sono cambiate nel tempo. Una AWS Config regola definisce le impostazioni di configurazione ideali per una risorsa e consente di AWS Config valutare se le AWS risorse soddisfano le condizioni stabilite dalle regole.

  • AWS Control Towerti aiuta a configurare e gestire un ambiente con AWS più account, seguendo le migliori pratiche prescrittive. Customizations for AWS Control Tower (cFct) ti aiuta a personalizzare la tua AWS Control Tower landing zone e a rimanere in linea con AWS le migliori pratiche. Le personalizzazioni sono implementate con CloudFormation modelli e politiche di controllo del servizio (). SCPs

  • AWS Lambda è un servizio di calcolo che consente di eseguire il codice senza gestire i server o effettuarne il provisioning. Esegue il codice solo quando necessario e si ridimensiona automaticamente, quindi paghi solo per il tempo di elaborazione che utilizzi.

  • AWS Organizationsè un servizio di gestione degli account che ti aiuta a consolidare più account Account AWS in un'organizzazione da creare e gestire centralmente.

  • AWS Security Hubfornisce una visione completa dello stato di sicurezza in AWS. Inoltre, consente di verificare la conformità AWS dell'ambiente agli standard e alle best practice del settore della sicurezza.

Altri strumenti

  • Python è un linguaggio di programmazione per computer generico.

Deposito di codice

Il codice per questo modello è disponibile nell'archivio di certificati CA GitHub Detect Amazon RDS con certificati CA in scadenza.

Best practice

Ti consigliamo di attenerti alle best practice riportate nelle seguenti risorse:

Epiche

AttivitàDescrizioneCompetenze richieste

Determina la tua strategia di implementazione.

Esamina la soluzione e il codice per determinare come implementarli nel tuo AWS ambiente. Determina se intendi eseguire la distribuzione in un unico account o in un' AWS organizzazione.

Proprietario dell'app, General AWS

Clonare il repository.

Immetti il seguente comando per clonare l'archivio di certificati CA Detect Amazon RDS con certificati CA in scadenza.

git clone https://github.com/aws-samples/config-rds-ca-expiry.git
Sviluppatore di app, proprietario dell'app

Convalida la versione di Python.

  1. Naviga nella directory di primo livello nel repository clonato.

    cd config-rds-ca-expiry
  2. config-rds-ca-expiryApri .yaml.

  3. Nella CertExpirationCheckLambdaFunction risorsa, verifica che la versione di Python sia compatibile con il tuo obiettivo. Regioni AWS Per impostazione predefinita, questa funzione utilizza Python 3.12. Per ulteriori informazioni, consulta AWS Lambda aggiunge il supporto per Python 3.12. Se necessario, aggiorna la versione di Python.

  4. Salva e chiudi config-rds-ca-expiry.yaml.

Sviluppatore di app, proprietario dell'app
AttivitàDescrizioneCompetenze richieste

Implementa il CloudFormation modello.

Implementa il CloudFormation modello nel tuo AWS ambiente. Esegui una di queste operazioni:

  • Se stai eseguendo la distribuzione su un singolo dispositivo Account AWS, segui le istruzioni in Creazione di uno stack.

  • Se stai eseguendo la distribuzione in un'organizzazione che non è gestita da AWS Control Tower, segui le istruzioni in Creare un set di stack.

  • Se esegui la distribuzione in un'organizzazione gestita da AWS Control Tower, consulta le istruzioni nella sezione Crea le tue personalizzazioni.

Sviluppatore di app, amministratore AWS, General AWS

Verifica la distribuzione.

Nella CloudFormation console, verifica che lo stack o il set di stack siano stati distribuiti correttamente.

Amministratore AWS, proprietario dell'app
AttivitàDescrizioneCompetenze richieste

Visualizza i risultati delle AWS Config regole.

In Security Hub, procedi come segue per visualizzare un elenco di risultati individuali:

  1. Apri la console Security Hub.

  2. Nel riquadro di navigazione, seleziona Esiti.

  3. Nella casella Aggiungi filtri, aggiungi i seguenti filtri:

    • Lo stato di conformità è FAILED

    • Il titolo è rds-has-expiring-ca

  4. Scegli Applica.

In Security Hub, procedi come segue per visualizzare un elenco di risultati totali raggruppati per Account AWS:

  1. Apri la console Security Hub.

  2. Nel riquadro di navigazione, seleziona Informazioni dettagliate.

  3. Scegliere Create insight (Crea informazione dettagliata).

  4. Per selezionare l'attributo di raggruppamento per l'informazione dettagliata:

    1. Scegli la casella di ricerca per visualizzare le opzioni di filtro.

    2. Scegliere Group by (Raggruppa per).

    3. Seleziona AwsAccountId.

    4. Scegli Applica.

  5. Nella casella Aggiungi filtri, aggiungi i seguenti filtri:

    • Il titolo è rds-has-expiring-ca

    • Lo stato di conformità è FAILED

  6. Scegliere Create insight (Crea informazione dettagliata).

  7. Inserisci un nome per Insight, quindi scegli Create insight.

Inoltre AWS Config, per visualizzare un elenco di risultati, segui le istruzioni in Visualizzazione delle informazioni sulla conformità e dei risultati della valutazione nella AWS Config documentazione.

Amministratore AWS, amministratore di sistema AWS, amministratore cloud

Risoluzione dei problemi

ProblemaSoluzione

CloudFormation la creazione o l'eliminazione dello stack set fallisce

Quando AWS Control Tower viene distribuito, impone i guardrail necessari e assume il controllo degli aggregatori e delle regole. AWS Config Ciò include la prevenzione di eventuali modifiche dirette. CloudFormation Per distribuire o rimuovere correttamente questo CloudFormation modello, incluse tutte le risorse associate, è necessario utilizzare cFCT.

cFct non riesce a eliminare il modello CloudFormation

Se il CloudFormation modello persiste anche dopo aver apportato le modifiche necessarie nel file manifesto e aver rimosso i file modello, verificate che il file manifesto contenga il enable_stack_set_deletion parametro e che il valore sia impostato su. false Per ulteriori informazioni, vedete Eliminare uno stack set nella documentazione cFct.

Risorse correlate