- v1.12 (più recente)
- Versione 1.11
- Versione 1.10
- Elenco delle versioni supportate
- Versione 1.9
- Versione 1.8
- Versione 1.7
- Versione 1.6
- Versione 1.5
- Versione 1.4
- Versione 1.3
- Versione 1.2
- Versione 1.1
Versioni supportate:
Versioni non supportate:
Per impostazione predefinita, i seguenti dati vengono archiviati criptati nel piano di runtime ibrido:
- Memorizzazione nella cache dei dati
- Comprimi dati chiave
- Dati del sistema di gestione delle chiavi (KMS)
- Dati mappa chiave-valore (KVM)
La crittografia dei dati non richiede una configurazione speciale da parte tua. Tuttavia, se per qualche motivo vuoi utilizzare le tue chiavi di crittografia (sostituendo quelle predefinite), puoi farlo, come spiegato in questo argomento.
Ambito della chiave di crittografia
Le chiavi di crittografia ibride di Apigee hanno un ambito. Ad esempio, le chiavi KMS hanno l'ambito organizzazione. Ciò significa che la chiave viene utilizzata per criptare i dati KMS per l'intera organizzazione. La seguente tabella elenca l'ambito di ciascun tipo di chiave:
Chiave di crittografia | Ambito |
---|---|
Contratto | Solo organizzazione |
KMS | Solo organizzazione |
KVM |
Organizzazione o ambiente
Se un criterio KVM specifica l'ambito |
Cache | Solo ambiente |
Informazioni sulle chiavi di crittografia predefinite
Per impostazione predefinita, Apigee hybrid fornisce un set di chiavi con codifica Base64 utilizzate per criptare i dati del contratto, KVM, KMS e della cache. Il programma di installazione ibrido di Apigee archivia le chiavi nel piano di runtime come secret di Kubernetes e le utilizza per criptare i dati con la crittografia standard AES-128. Le chiavi sono sotto il tuo controllo; il piano di gestione ibrido non ne viene mai a conoscenza in nessun momento.
Le chiavi predefinite vengono applicate a tutti i nuovi componenti ibridi di Apigee quando li crei.
Modifica delle chiavi di crittografia predefinite
Sebbene non sia obbligatorio, puoi modificare qualsiasi chiave di crittografia predefinita, se vuoi. Per sostituire una o più chiavi predefinite, segui questi passaggi:
- Copia le seguenti stanze nel file di override.
Questa configurazione consente di modificare le chiavi di crittografia KMS e KVM a livello di organizzazione e le chiavi di crittografia KVM e della cache per il livello di ambiente:
defaults: org: kmsEncryptionKey: base64-encoded-key kvmEncryptionKey: base64-encoded-key contractEncryptionKey: base64-encoded-key env: kvmEncryptionKey: base64-encoded-key cacheEncryptionKey: base64-encoded-key
- Genera una nuova chiave per ogni chiave che vuoi sostituire. Ogni chiave deve essere una stringa con codifica Base64 esattamente di 16, 24 o 32 byte. Vedi anche Come creare una chiave codificata.
- Sostituisci le chiavi predefinite con altre nuove. In questo esempio, tutte le chiavi predefinite vengono sostituite con chiavi:
defaults: org: kmsEncryptionKey: "JVpTb1FwI0otUHo2RUdRN3pnVyQqVGlMSEFAJXYmb1c=" kvmEncryptionKey: "T3VkRGM1U3cpOFgtNk9fMnNZU2NaSVA3I1BtZWxkaUU=" contractEncryptionKey: "RDEyMzQ1Njc4OTAxMjM0NQ==" env: kvmEncryptionKey: "Q3h6M3R6OWdBeipxTURfKjQwQVdtTng2dU5mODFHcyE=" cacheEncryptionKey: "b2NTVXdKKjBzN0NORF9XSm9tWFlYKGJ6NUhpNystJVI="
Esegui l'override delle chiavi predefinite
Puoi eseguire l'override delle chiavi per l'organizzazione o gli ambienti specifici indicati nel file di override. Quando crei i componenti, le chiavi specificate per l'organizzazione o per i singoli ambienti sostituiranno i valori predefiniti.
- Copia le seguenti stanze nel file di override.
Questa configurazione consente di modificare le chiavi di crittografia KMS e KVM a livello di organizzazione e le chiavi di crittografia KVM e della cache per il livello di ambiente:
org:YOUR_ORG_NAME kmsEncryptionKey: base64-encoded-key kvmEncryptionKey: base64-encoded-key contractEncryptionKey: base64-encoded-key envs - name: ENV_NAME kvmEncryptionKey: base64-encoded-key kmsEncryptionKey: base64-encoded-key cacheEncryptionKey: base64-encoded-key - name: 2ND_ENV_NAME kvmEncryptionKey: base64-encoded-key kmsEncryptionKey: base64-encoded-key cacheEncryptionKey: base64-encoded-key
- Genera una nuova chiave per ogni chiave di cui vuoi eseguire l'override. Ogni chiave deve essere una stringa con codifica Base64 esattamente di 16, 24 o 32 byte. Vedi anche Come creare una chiave codificata.
- Specifica le chiavi di cui vuoi eseguire l'override. In questo esempio, tutte le chiavi predefinite vengono sostituite con chiavi:
org:hybrid-org kmsEncryptionKey: "QTEyMz1b2jc4OTAxMjM0NQ==" kvmEncryptionKey: "QzEyM2c3Njc4OTAxMjM0NQ==" contractEncryptionKey: "RDEyMzQ1Njc4OTAxMjM0NQ==" envs: - name: prod kvmEncryptionKey: "QzEyM2c3Njc4OTAxMjM0NQ==" kmsEncryptionKey: "QTEyMz1b2jc4OTAxMjM0NQ==" cacheEncryptionKey: "QjEyAvC1Njc4OTAxMjM0NQ==" envs: - name: test kvmEncryptionKey: "A1b2C3d4E5f6G7h8I9j10K==" kmsEncryptionKey: "QTEyMz1b2jc4OTAxMjM0NQ==" cacheEncryptionKey: "B1c2D3e4F5f6H7i8J9k10L=="
Applica le modifiche principali
Applica il file di override al cluster come con i seguenti comandi Helm:- Se modifichi la chiave del contratto o la chiave KVM per l'organizzazione, aggiorna l'organizzazione:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
- Se modifichi la chiave cache o la chiave KVM per un ambiente, aggiorna l'ambiente:
helm upgrade ENV_NAME apigee-env/ \ --namespace apigee \ --atomic \ --set env=ENV_NAME \ -f OVERRIDES_FILE.yaml
- Se cambi la chiave KMS, aggiorna sia l'organizzazione sia l'ambiente:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
helm upgrade ENV_NAME apigee-env/ \ --namespace apigee \ --set env=ENV_NAME \ --atomic \ -f OVERRIDES_FILE.yaml
Una nota sulla compatibilità con le versioni precedenti
Se rimuovi le chiavi di crittografia dal file di override la prima volta che installi Apigee hybrid, disabiliteresti di fatto la crittografia e i valori verrebbero archiviati non criptati. Se in un secondo momento abiliti la crittografia fornendo le chiavi, l'uscita dai dati non verrà crittografata; tuttavia, tutti i dati aggiunti in futuro verranno criptati. Il sistema continuerà a funzionare normalmente con i dati non criptati e con i nuovi dati criptati.
Inoltre, tieni presente che in un secondo momento non potrai modificare le chiavi di crittografia dopo che i dati di runtime saranno stati criptati.
Come creare una chiave codificata
Per la crittografia di KVM, KMS e della cache è necessaria una chiave con codifica Base-64 formattata correttamente. La chiave utilizzata per questi scopi deve essere codificata in Base-64 da una stringa di 16, 24 o 32 byte, come spiegato di seguito:
Il seguente comando di esempio genera una stringa adatta, generata in modo casuale, di 32 caratteri con codifica Base64:
head -c 32 /dev/random | openssl base64