Best practice per CMEK di Apigee

Questa pagina descrive le best practice CMEK con Apigee.

Prevenzione dei rischi

Attualmente, Apigee supporta un insieme limitato di account la funzionalità della chiave di crittografia. Per impedire l'eliminazione accidentale delle chiavi CMEK o le versioni della chiave, ti consigliamo di implementare quanto segue:

  • Rafforza i controlli di accesso: limita il limite Autorizzazioni di eliminazione/aggiornamento del ruolo roles/cloudkms.admin o della chiave Rivolto solo agli amministratori fidati o ai membri senior dei team.
  • Esegui regolarmente controlli delle autorizzazioni: assicurati che le autorizzazioni non vengano ampliate inavvertitamente nel tempo.
  • Eliminazione automatica delle chiavi: non configurare automazioni per eliminare/disattivare automaticamente le chiavi.

Configura durata e rotazione per l'eliminazione delle chiavi

  • Valuta la possibilità di estendere la durata predefinita dell'eliminazione: il periodo di eliminazione programmata predefinito è di 30 giorni. Impostazione di un'eliminazione personalizzata durante la creazione della chiave di applicare una durata maggiore tramite i criteri dell'organizzazione possono offrire più tempo per il ripristino in caso di per eliminazione accidentale. Se ritieni che tempi di distruzione più lunghi comportino un rischio maggiore, tieni presente che una durata di distruzione più lunga ti impedisce anche di eliminare accidentalmente la chiave. Puoi bilanciare i vantaggi e i rischi per capire quale durata è la migliore per te.
  • Richiedi la disattivazione delle chiavi prima dell'eliminazione: consigliamo la disabilitazione delle versioni delle chiavi prima di pianificarne l'eliminazione. Ciò consente di verificare che la chiave non sia in uso attivo e che sia un passaggio importante determinare se è sicuro eliminare la versione di una chiave.
  • Implementazione rotazione della chiave: la rotazione regolare delle chiavi limita l'impatto delle una potenziale compromissione. Nel caso in cui una chiave sia compromessa, vengono la rotazione limita il numero di messaggi effettivi vulnerabili a essere compromessi.

Rotazione delle chiavi in Apigee

Lo scopo principale della rotazione delle chiavi è ridurre la quantità di dati criptati con una singola chiave, non sostituire completamente la vecchia versione della chiave. Per entrambi i runtime e alle chiavi del piano di controllo, la chiave originale rimane collegata alla risorsa dal momento in cui viene creata.

Esempi illustrativi

  • Un'istanza Apigee utilizzerà sempre la versione della chiave CMEK primaria che era attiva al momento della creazione, anche dopo la rotazione della chiave.
  • Un bundle proxy continuerà a utilizzare la versione della chiave CMEK primaria che era attivo quando è stato creato per la prima volta. Tuttavia, se questo bundle proxy viene modificato dopo la rotazione delle chiavi, tutti i nuovi dati al suo interno verranno criptati con la nuova versione della chiave primaria.

Limitazione attuale: nessuna ricrittografia automatica

È importante notare che Apigee al momento non supporta la ricrittografia automatica dei dati esistenti quando una chiave viene ruotata. Solo una quantità limitata di nuovi dati verrà criptata con la nuova versione della chiave primaria. La la maggior parte dei dati, ad esempio analisi, dati del disco runtime e proxy precedenti revisioni saranno comunque criptate con la versione precedente della chiave.

Disattivazione della chiave

La disattivazione o l'eliminazione delle chiavi interromperà la funzionalità di Apigee. Se se prima disattivi la chiave, puoi riabilitarla se si tratta di un falso allarme.

Se sospetti una compromissione di una chiave (o di una versione della chiave):

  • Scenario ad alto rischio: se ritieni che i tuoi dati Apigee siano sensibili e che un malintenzionato abbia un'alta probabilità di sfruttarli, disattiva immediatamente la chiave e revoca l'accesso. Devi disabilitare la chiave prima di ricreare un apigee istanza e apigee organizzazione.
  • Scenario a basso rischio: se ridurre al minimo il tempo di inattività è più importante e il rischio potenziale, devi ricreare l'istanza apigee apigee organizzazione prima di disabilitare/eliminare la CMEK. Continua a leggere per scoprire come prevenire in modo proattivo i tempi di riposo investendo in backup/ripristino.
  • Contatta l'assistenza: ti consigliamo di contattare l'assistenza clienti Google Cloud se ritieni che una chiave sia compromessa e devi disattivarla.

Controlla l'impatto della disattivazione/revoca/distruzione di una chiave di seguito. Dopo aver disabilitato la chiave, dovrai ricreare il tuo apigee org/instances. Consulta le best practice.

  • Compromissione CMEK di runtime:crea nuove istanze con una nuova CMEK, quindi Elimina le istanze originali e la vecchia CMEK di runtime dopo il traffico viene eseguita la migrazione.
  • Tutte le compromissioni CMEK: crea una nuova organizzazione apigee con una nuova chiave CMEK, replica la configurazione, sposta il traffico arresta la vecchia organizzazione e disattiva/elimina la CMEK originale.
  • Contatta l'assistenza clienti Google Cloud: se l'API per l'eliminazione/la ricostruzione di istanze o dell'apigee org richiede molto tempo, contatta l'assistenza clienti Google Cloud.

Impatto della disattivazione/revoca/eliminazione delle chiavi

Se disattivi, revochi o distruggi la chiave, Apigee non funzionerà correttamente. Gli impatti sono i seguenti:

  • Disabilitazione/revoca/eliminazione dell'intera chiave: Apigee le API rivolte ai clienti smetteranno di funzionare immediatamente. I sistemi interni subiranno un errore entro pochi minuti, con ripercussioni sul deployment del proxy, sul traffico di runtime, sull'analisi e sulla sicurezza delle API. L'istanza diventerà completamente non avviabile in alcune settimane a causa di problemi di rimontaggio del disco.
  • Disabilitazione/revoca/eliminazione di una versione della chiave (incluse le chiave primaria o versione precedente della chiave): le API rivolte ai clienti di Apigee quella versione della chiave smetterà di funzionare immediatamente. Alcuni sistemi interni e il traffico di runtime saranno interessati. L'istanza potrebbe non essere avviabile se la versione della chiave è stata utilizzata per la crittografia del disco.

Riattivazione di una chiave

Se una compromissione è un falso allarme o la disattivazione della chiave non come previsto, puoi riabilitarla se viene disabilitata. Riattivazione in corso... una chiave ripristina la funzionalità per le API rivolte ai clienti. I sistemi interni devono il ripristino in pochi minuti. Tuttavia, durante il periodo di mancata disponibilità della chiave potrebbe verificarsi una perdita di dati per la sicurezza e l'analisi delle API.

  • Se il periodo di disattivazione della chiave è breve: il sistema dovrebbe recuperare tranne per alcune perdite di dati relative alla sicurezza e all'analisi delle API.
  • Se il periodo di disattivazione della chiave è lungo: il sistema riprende a gestire il traffico, ma possono verificarsi incoerenze nei dati in cui una regione restituisce un valore e la regione precedentemente inattiva ne restituisce un altro. Contatto Assistenza clienti Google Cloud per riparare il tuo cluster Apigee.

Eliminazione di una chiave

Prima di eliminare una chiave, tieni presente quanto segue:

Protezione dell'organizzazione Apigee con i backup CI/CD

In caso di compromissione delle chiavi di crittografia gestite dal cliente (CMEK), è fondamentale intervenire immediatamente per disattivare, revocare o distruggere la chiave compromessa. Tuttavia, questa misura di sicurezza necessaria può rendere i tuoi Il sistema Apigee non funziona, con conseguenti possibili tempi di inattività e e interruzioni del servizio.

Per garantire tempi di inattività minimi o nulli per i tuoi servizi Apigee, è fondamentale implementare un approccio proattivo: backup continui della configurazione della tua organizzazione (backup di integrazione/deployment continuo (CI/CD)). Consulta gli strumenti disponibili e le best practice per il ripristino di un Apigee.

La potenza di CI/CD e IaC

Investire in strumenti come Terraform, una soluzione Infrastructure as Code (IaC), consente di creare facilmente una nuova organizzazione Apigee dalla configurazione di cui è stato eseguito il backup. Questa procedura semplificata ti consente di ricreare l'organizzazione Apigee in modo rapido ed efficiente, riducendo al minimo i tempi di inattività garantire la continuità aziendale.

Strumenti disponibili per l'utilizzo

Puoi combinare tutti i seguenti strumenti per eseguire periodicamente il backup della tua apigee organizzazione e testare la procedura di recupero.

Best practice

  • Backup regolari: pianifica backup regolari per assicurarti di avere il massimo e una configurazione sempre aggiornata. Consulta: Esportazione/ricreazione di organizzazioni.
  • Archiviazione sicura: archivia i backup in un luogo sicuro, ad esempio un repository criptato.
  • Testa i ripristini: testa periodicamente il processo di ripristino per assicurarti di poter recuperare efficacemente la tua organizzazione Apigee. Testa periodicamente la procedura di ripristino per assicurarti di poter trasferire rapidamente il traffico alle organizzazioni Apigee appena create.

Esportazione/ricreazione delle organizzazioni

apigeecli è uno strumento a riga di comando che consente di gestire Apigee Google Cloud. Ti permette di eseguire le stesse azioni di Apigee API in un'interfaccia a riga di comando facile da usare, analoga a gcloud tramite comandi SQL.
Se vuoi ricreare organizzazioni Apigee o eseguire la migrazione a un'altra organizzazione Apigee, puoi utilizzare apigeecli organizations export e apigeecli organizations import. Può essere utilizzato anche come base per i backup continui. Può esportare e importare risorse come:

  • Documentazione sul portale API
  • Categorie dei portali API
  • Proxy API
  • Configurazione della sicurezza dell'API e profili di sicurezza
  • Flussi condivisi
  • Prodotti basati su API
  • Sviluppatori
  • App per sviluppatori, incluse le credenziali
  • AppGroups e Apps con credenziali
  • Dettagli ambiente
  • Gruppi di ambienti
  • Configurazione dei terminali di raccolta dati
  • Keystore e certificati alias a livello di ambiente
  • Server di destinazione a livello di ambiente
  • Riferimenti a livello di ambiente
  • Mappe di valori chiave (KVM) e voci a livello di organizzazione, ambiente e proxy
  • Archivi chiavi e certificati alias, tranne le chiavi private

Lo strumento può gestire tutte le altre risorse Apigee. L'intero elenco di comandi può essere visualizzato utilizzando apigeecli tree.

Questo strumento presenta alcune limitazioni:

  • Gli archivi chiavi richiedono di salvare la chiave privata al momento della creazione e di includerla nel file di backup locali
  • I token OAuth non potranno essere sottoposti a backup e ripristino, il che implica che le istanze Apigee appena create richiederanno ai clienti di eseguire nuovamente l'accesso.
  • I controlli dell'accesso come i criteri dell'organizzazione e le regole IAM non sono di cui è stata eseguita la migrazione. Se vuoi eseguire la migrazione di queste regole, devi utilizzare l'API Google Cloud.
  • Le esportazioni dei report di Analytics non sono supportate e le metriche di analisi non sono supportate. copiato nella nuova organizzazione apigee.
  • Questo comando import non crea automaticamente l'istanza, envGroup, EnvAttachments, collegamenti endpoint o eseguire il deployment di proxy per tuo conto. Puoi gestire queste risorse, ma non direttamente tramite Comando import.
  • Questo comando import non crea automaticamente siti dei portali. La creazione dei siti dei portali deve essere effettuata manualmente tramite l'interfaccia utente.
  • Ti consigliamo di investire nel ripristino di emergenza per l'eliminazione delle chiavi e di testare periodicamente la procedura di ripristino per assicurarti di poter trasferire rapidamente il traffico alle organizzazioni Apigee appena create.

Prerequisiti

Prima di iniziare, assicurati che siano soddisfatti i seguenti prerequisiti:

  • Apigee CLI installato: installa apigeecli seguendo i passaggi descritti nella guida all'installazione.
  • Autenticazione. Devi disporre delle autorizzazioni necessarie e credenziali di autenticazione per interagire con le organizzazioni Apigee. Assicurati di avere configurato:
    • Google Cloud SDK (gcloud): installato e autenticato.
    • Token di accesso: ottieni un token di accesso utilizzando gcloud auth print-access-token.
  • Accesso alla rete: assicurati che la rete consenta l'accesso alle API Apigee.
  • Crea organizzazione: crea una nuova organizzazione apigee da creare eseguire la migrazione. Puoi creare diversi tipi di apigee organizzazioni; ma assicurati di usare dello stesso tipo di organizzazione (pagamento a consumo o abbonamento) il tipo di routing di rete utilizzato con l'organizzazione originale.

Esportazione di un'organizzazione Apigee

Di seguito è riportato un comando di esempio. Consulta apigeecli organizations export per informazioni dettagliate sui diversi flag.

# Sample command
mkdir apigee_backup
cd apigee_backup

# gcloud auth application-default login
export ORG_FROM=REPLACE
apigeecli organizations export -o $ORG_FROM --default-token

Importazione di un'organizzazione Apigee

Di seguito è riportato un comando di esempio. Consulta apigeecli organizations import per informazioni dettagliate sui diversi flag

# Sample command
# gcloud auth application-default login
export ORG_TO=REPLACE
apigeecli organizations import -o $ORG_TO -f . --default-token

Passaggi successivi all'importazione

Creare istanze e configurare le reti

Per creare un'istanza e configurare le reti:

  1. Segui i passaggi in Crea una nuova istanza per crearne una nuova.
  2. Configura il traffico in entrata: il traffico in entrata si riferisce al traffico API da client esterni o interni ad Apigee tramite un bilanciatore del carico. Tu devi assicurarti di configurare correttamente la PSC o il VPC in modo che è raggiungibile. Dovrai configurare i nomi host dei gruppi di ambienti nella nuova organizzazione.
  3. Configura il traffico verso sud: verso sud si riferisce al traffico API. da Apigee ai servizi di destinazione del proxy API. Pertanto, devi prenotare e attivare nuovi indirizzi IP per il NAT e riconfigurare i firewall/le liste consentite sugli endpoint di destinazione.

Per ulteriori informazioni, consulta le opzioni di networking di Apigee.

Eseguire il backup o il ripristino di altre configurazioni

Utilizza una delle seguenti opzioni per eseguire il backup/ripristino di altre configurazioni:

Esegui il deployment dei proxy

Utilizza uno dei seguenti metodi per eseguire il deployment dei proxy:

Cambia il traffico

Per spostare il traffico:

  1. Prepara i test di integrazione automatici per la nuova istanza.
  2. Configura un bilanciatore del carico per spostare gradualmente il traffico alla nuova istanza durante il monitoraggio delle prestazioni.