Google Cloud offre due vincoli dei criteri dell'organizzazione per impostare il criterio di distruzione delle versioni delle chiavi in un'organizzazione:
constraints/cloudkms.minimumDestroyScheduledDuration
viene utilizzato per impostare una lunghezza minima per la durata pianificata per l'eliminazione delle nuove chiavi all'interno dell'organizzazione.constraints/cloudkms.disableBeforeDestroy
viene utilizzato per richiedere che una versione della chiave sia stata disattivata prima che possa essere pianificata per l'eliminazione.
Prima di iniziare
Le istruzioni in questa pagina presuppongono che tu abbia familiarità con l'utilizzo dei vincoli e che disponi delle risorse e dei ruoli richiesti.
Risorse richieste
Prima di poter completare i passaggi in questa pagina, devi disporre delle seguenti risorse:
- Un'organizzazione.
- (Facoltativo) Una risorsa di una cartella o di un progetto all'interno della tua organizzazione.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per gestire le norme dell'organizzazione,
chiedi all'amministratore di concederti il ruolo IAM Amministratore delle norme dell'organizzazione (roles/orgpolicy.policyAdmin
) nell'organizzazione.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per gestire i criteri dell'organizzazione. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per gestire le norme dell'organizzazione sono necessarie le seguenti autorizzazioni:
-
orgpolicy.constraints.list
-
orgpolicy.policies.create
-
orgpolicy.policies.delete
-
orgpolicy.policies.list
-
orgpolicy.policies.update
-
orgpolicy.policy.get
-
orgpolicy.policy.set
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Richiedere una durata minima per l'attributo Pianificata per l'eliminazione
Il vincolo Durata pianificata minima dell'eliminazione per chiave (constraints/cloudkms.minimumDestroyScheduledDuration
) viene utilizzato per impostare una lunghezza minima per la durata pianificata per l'eliminazione delle nuove chiavi. Questo
vincolo sostituisce la durata minima Prevista per l'eliminazione a livello di
progetto, cartella o organizzazione. Questo vincolo riduce la possibilità di distruggere accidentalmente una chiave ancora necessaria. Puoi impostare questo vincolo su un valore più elevato per assicurarti di avere il tempo di impedire la distruzione della chiave prima che diventi irreversibile.
Utilizza valori più elevati per questa limitazione quando la distruzione indesiderata delle chiavi sarebbe più dannosa, ad esempio per i dati di produzione soggetti a requisiti di conservazione dei dati. Utilizza valori inferiori per questo vincolo quando l'eliminazione di chiavi indesiderate sarebbe meno dannosa, ad esempio per ambienti di sviluppo o di test. Puoi anche utilizzare valori inferiori per consentire la crypto-shredding in tempo. Tuttavia, poiché è un valore minimo, questo vincolo non può garantire che vengano create nuove chiavi con durate pianificate per l'eliminazione ridotte.
Per richiedere una durata minima per l'attributo Pianificata per l'eliminazione:
Recupera il criterio corrente per la risorsa dell'organizzazione utilizzando il comando
describe
. Questo comando restituisce il criterio applicato direttamente a questa risorsa:gcloud org-policies describe \ constraints/cloudkms.minimumDestroyScheduledDuration \ --organization=ORGANIZATION_ID
Sostituisci
ORGANIZATION_ID
con l'identificatore univoco della risorsa dell'organizzazione. L'ID organizzazione è formattato come numeri decimali e non può avere zeri iniziali.Puoi anche visualizzare il criterio dell'organizzazione per una cartella o un progetto con i flag
--folder
o--project
e l'ID cartella o l'ID progetto, rispettivamente.La risposta restituisce il criterio dell'organizzazione corrente, se esistente. L'output è simile al seguente:
name: organizations/ORGANIZATION_ID/policies/cloudkms.minimumDestroyScheduledDuration spec: etag: COTP+KYGELiCmsoB inheritFromParent: true rules: - values: allowedValues: - in:7d updateTime: '2023-08-17T14:00:04.424051Z'
Se non è impostato un criterio, il comando
describe
restituisce un erroreNOT_FOUND
:ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
Imposta il criterio nell'organizzazione utilizzando il comando
set-policy
. Questo comando sovrascrive qualsiasi criterio attualmente associato alla risorsa.Crea un file temporaneo
/tmp/policy.yaml
per archiviare il criterio:name: organizations/ORGANIZATION_ID/policies/cloudkms.minimumDestroyScheduledDuration spec: rules: - values: allowedValues: - in:MINIMUM_DURATION
Sostituisci quanto segue:
ORGANIZATION_ID
: l'ID numerico della tua organizzazione.MINIMUM_DURATION
: la durata minima dello stato pianificata per l'eliminazione per le chiavi di questa organizzazione, in giorni. Deve essere uno dei seguenti valori:7d
,15d
,30d
,60d
,90d
o120d
.
Esegui il comando
set-policy
:gcloud org-policies set-policy /tmp/policy.yaml
Visualizza il criterio attualmente in vigore utilizzando
describe --effective
. Questo comando restituisce il criterio dell'organizzazione così come viene valutato in questo punto nella gerarchia delle risorse con l'eredità inclusa.gcloud org-policies describe \ constraints/cloudkms.minimumDestroyScheduledDuration --effective \ --organization=ORGANIZATION_ID
L'output è simile al seguente:
name: organizations/ORGANIZATION_ID/policies/cloudkms.minimumDestroyScheduledDuration spec: rules: - values: allowedValues: - 30d - 15d - 90d - 60d - 7d - 120d
Poiché questo criterio dell'organizzazione è stato impostato a livello di organizzazione, viene ereditato da tutte le risorse secondarie che consentono l'ereditarietà.
Richiedere la disattivazione delle chiavi prima della distruzione
Il vincolo Limita l'eliminazione delle chiavi alle versioni delle chiavi disattivate (constraints/cloudkms.disableBeforeDestroy
) consente di richiedere che una chiave sia stata disattivata prima di poter pianificarne l'eliminazione.
La disattivazione di una chiave prima della distruzione è una best practice consigliata perché
ti aiuta a verificare che la chiave non sia in uso. Puoi combinare questa limitazione con un criterio Identity and Access Management accurato per creare un processo di distruzione a più passaggi che richiede la collaborazione di più ruoli.
Per utilizzare questo vincolo per creare un processo di distruzione in più passaggi, assicurati che nessun utente disponga sia delle autorizzazioni cloudkms.cryptoKeyVersions.update
sia di quelle cloudkms.cryptoKeyVersions.destroy
. Questo caso d'uso richiede l'utilizzo di ruoli personalizzati.
Per richiedere che una chiave sia nello stato Disattivata prima di poterla pianificare per l'eliminazione, segui questi passaggi:
gcloud
Recupera il criterio corrente per la risorsa dell'organizzazione utilizzando il comando
describe
. Questo comando restituisce il criterio applicato direttamente a questa risorsa:gcloud org-policies describe \ constraints/cloudkms.disableBeforeDestroy \ --organization=ORGANIZATION_ID
Sostituisci
ORGANIZATION_ID
con l'identificatore univoco della risorsa dell'organizzazione. L'ID organizzazione è formattato come numeri decimali e non può avere zeri iniziali.Puoi anche visualizzare il criterio dell'organizzazione per una cartella o un progetto con i flag
--folder
o--project
e l'ID cartella o l'ID progetto, rispettivamente.La risposta restituisce il criterio dell'organizzazione corrente, se esistente. L'output è simile al seguente:
name: organizations/ORGANIZATION_ID/policies/cloudkms.disableBeforeDestroy spec: etag: CPvY+KYGENDwgxA= rules: - enforce: true updateTime: '2023-08-17T14:19:39.033618Z'
Se non è impostato un criterio, il comando
describe
restituisce un erroreNOT_FOUND
:ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
Imposta il criterio nell'organizzazione utilizzando il comando
set-policy
. Questo comando sovrascrive qualsiasi criterio già associato alla risorsa.Crea un file temporaneo
/tmp/policy.yaml
per archiviare il criterio:name: organizations/ORGANIZATION_ID/policies/cloudkms.disableBeforeDestroy spec: rules: - enforce: true
Sostituisci
ORGANIZATION_ID
con l'identificatore univoco della risorsa dell'organizzazione.Esegui il comando
set-policy
:gcloud org-policies set-policy /tmp/policy.yaml
Visualizza il criterio attualmente in vigore utilizzando
describe --effective
. Questo comando restituisce il criterio dell'organizzazione così come viene valutato in questo punto nella gerarchia delle risorse con l'eredità inclusa.gcloud org-policies describe \ constraints/cloudkms.disableBeforeDestroy --effective \ --organization=ORGANIZATION_ID
L'output è simile al seguente:
name: organizations/ORGANIZATION_ID/policies/cloudkms.minimumDestroyScheduledDuration spec: rules: - enforce: true
Poiché questo criterio dell'organizzazione è stato impostato a livello di organizzazione, viene ereditato da tutte le risorse secondarie che consentono l'ereditarietà.
Passaggi successivi
- Scopri di più sugli stati delle versioni delle chiavi.
- Eliminare e ripristinare una versione della chiave.