Vincoli dei criteri dell'organizzazione per Cloud Storage

Questa pagina fornisce informazioni supplementari sui vincoli dei criteri dell'organizzazione che si applicano a Cloud Storage. Utilizza i vincoli per applicare i comportamenti dei bucket e degli oggetti a un intero progetto o a un'intera organizzazione. I vincoli dei criteri dell'organizzazione possono essere vincoli booleani o vincoli dell'elenco.

Limitazioni di Cloud Storage

I seguenti vincoli possono essere applicati a un criterio dell'organizzazione e relativi a Cloud Storage:

Applicare la prevenzione dell'accesso pubblico

Nome vincolo: constraints/storage.publicAccessPrevention Tipo vincolo: boolean

Quando applichi il vincolo publicAccessPrevention a una risorsa, l'accesso pubblico è limitato per tutti i bucket e gli oggetti, sia nuovi che esistenti, all'interno della risorsa.

Tieni presente che l'attivazione o la disattivazione di publicAccessPrevention può richiedere fino a 10 minuti prima di diventare effettiva.

Durata di conservazione dell'eliminazione temporanea

Nome vincolo: constraints/storage.softDeletePolicySeconds Tipo vincolo: list

Quando applichi il vincolo softDeletePolicySeconds, specifichi una o più durate come parte del vincolo. Una volta impostato, il criterio di eliminazione temporanea del bucket deve includere una delle durate specificate. softDeletePolicySeconds è obbligatorio quando crei un nuovo bucket e quando aggiungi o aggiorni la durata di conservazione dell'eliminazione temporanea (softDeletePolicy.retentionDuration) di un bucket esistente. Tuttavia, non influisce in altro modo sui bucket esistenti.

Se imposti più vincoli softDeletePolicySeconds a diversi livelli di risorse, questi vengono applicati in modo gerarchico. Per questo motivo, è consigliabile impostare il campo inheritFromParent su true, in modo da garantire che vengano presi in considerazione anche i criteri dei livelli superiori.

Durata del criterio di conservazione del bucket in secondi

Nome vincolo: constraints/storage.retentionPolicySeconds Tipo vincolo: list

Quando applichi il vincolo retentionPolicySeconds, specifichi una o più durate come parte del vincolo. Una volta impostati, i criteri di conservazione del bucket devono includere una delle durate specificate. retentionPolicySeconds è obbligatorio quando crei nuovi bucket e quando aggiungi o aggiorni il periodo di conservazione di un bucket esistente. Tuttavia, non è obbligatorio per i bucket esistenti.

Se imposti più vincoli retentionPolicySeconds a diversi livelli di risorse, questi vengono applicati in modo gerarchico. Per questo motivo, è consigliabile impostare il campo inheritFromParent su true, in modo da garantire che vengano presi in considerazione anche i criteri dei livelli superiori.

Richiedi accesso uniforme a livello di bucket

Nome vincolo: constraints/storage.uniformBucketLevelAccess Tipo vincolo: boolean

Quando applichi il vincolo uniformBucketLevelAccess, i nuovi bucket devono attivare la funzionalità di accesso uniforme a livello di bucket e i bucket preesistenti con questa funzionalità attivata non possono disattivarla. Non è necessario attivare l'accesso uniforme a livello di bucket per i bucket preesistenti con accesso uniforme a livello di bucket disabilitato.

Modalità di audit logging dettagliato

Nome vincolo: constraints/gcp.detailedAuditLoggingMode Tipo vincolo: boolean

Quando applichi il vincolo detailedAuditLoggingMode, gli audit log associati alle operazioni di Cloud Storage contengono informazioni dettagliate su richieste e risposte. Questo vincolo è consigliato per l'utilizzo in combinazione con il blocco dei bucket e il blocco di conservazione degli oggetti per la ricerca di varie conformità, come la regola SEC 17a-4(f), la regola CFTC 1.31(c)-(d) e la regola FINRA 4511(c).

Le informazioni registrate includono parametri di ricerca, i parametri di percorso e i parametri del corpo della richiesta. I log escludono alcune parti di richieste e risposte associate a informazioni sensibili. Ad esempio, i log escludono:

  • Credenziali, ad esempio Authorization, X-Goog-Signature o upload-id.
  • Informazioni sulla chiave di crittografia, ad esempio x-goog-encryption-key.
  • Dati non elaborati degli oggetti.

Quando utilizzi questa limitazione, tieni presente quanto segue:

  • Le informazioni dettagliate su richieste e risposte non sono garantite; in rari casi, potrebbero essere restituiti log vuoti.
  • L'attivazione di detailedAuditLoggingMode aumenta la quantità di dati archiviati nei log di controllo, il che potrebbe influire sui costi di Cloud Logging per i log di accesso ai dati.
  • L'abilitazione o la disattivazione di detailedAuditLoggingMode può richiedere fino a 10 minuti per diventare effettiva.

  • Le richieste e le risposte registrate vengono registrate in un formato generico che corrisponde ai nomi dei campi dell'API JSON.

Limitare i tipi di autenticazione

Nome vincolo: constraints/storage.restrictAuthTypes Tipo vincolo: list

Quando applichi il vincolo restrictAuthTypes, le richieste di accesso alle risorse Cloud Storage che utilizzano il tipo di autenticazione limitato non vanno a buon fine, indipendentemente dalla validità della richiesta. Puoi utilizzare il vincolo restrictAuthTypes per limitare le chiavi HMAC per soddisfare i requisiti normativi o aumentare la sicurezza dei tuoi dati.

Il vincolo dell'elenco nega esplicitamente tipi di autenticazione specifici, consentendo tutti gli altri. Per farlo, devi elencare i tipi di autenticazione limitati nella chiave deniedValues all'interno di rules del vincolo restrictAuthTypes. Si verifica un errore se provi a elencare i tipi di autenticazione con limitazioni nella chiave allowedValues.

Puoi limitare i seguenti tipi di autenticazione:

  • SERVICE_ACCOUNT_HMAC_SIGNED_REQUESTS: limita le richieste firmate dalle chiavi HMAC del service account.

  • USER_ACCOUNT_HMAC_SIGNED_REQUESTS: limita le richieste firmate dalle chiavi HMAC dell'account utente.

  • in:ALL_HMAC_SIGNED_REQUESTS: limita le richieste firmate da qualsiasi chiave HMAC. Se devi soddisfare i requisiti di sovranità dei dati, ti consigliamo di limitare tutte le richieste firmate HMAC.

Quando attivi questo vincolo, si verifica quanto segue:

  • Cloud Storage limita l'accesso per le richieste autenticate con il tipo di autenticazione limitato. Le richieste non vanno a buon fine con l'errore 403 Forbidden.

  • Le entità precedentemente autorizzate a eseguire la richiesta ricevono un messaggio di errore che spiega che il tipo di autenticazione è disabilitato.

  • Se le chiavi HMAC sono limitate:

    • Le chiavi HMAC del tipo limitato non possono più essere create o attivate nella risorsa in cui viene applicato il vincolo. Le richieste di creazione o attivazione delle chiavi HMAC non riescono con l'errore 403 Forbidden.

    • Le chiavi HMAC esistenti rimangono, ma non sono più utilizzabili. Possono essere disattivati o eliminati, ma non possono essere riattivati.

Quando utilizzi il vincolo restrictAuthTypes, tieni presente le risorse esistenti che dipendono dall'autenticazione HMAC. Ad esempio, se hai eseguito la migrazione da Amazon Simple Storage Service (Amazon S3), è probabile che la tua applicazione utilizzi chiavi HMAC per autenticare le richieste a Cloud Storage. Puoi utilizzare la metrica Cloud Monitoring storage.googleapis.com/authn/authentication_count per monitorare il numero di volte in cui le chiavi HMAC sono state utilizzate per autenticare le richieste.

Limita le richieste HTTP non criptate

Nome vincolo: constraints/storage.secureHttpTransport Tipo vincolo: boolean

Quando applichi il vincolo secureHttpTransport, viene negato tutto l'accesso HTTP non criptato alle risorse Cloud Storage.

Vincoli aggiuntivi

I seguenti vincoli dei criteri dell'organizzazione si applicano in modo più generale in tutto Google Cloud, ma spesso vengono applicati al servizio Cloud Storage:

Consentire o negare in modo condizionale i vincoli dei criteri dell'organizzazione

I tag forniscono un modo per consentire o negare in modo condizionale i criteri dell'organizzazione a seconda che un bucket Cloud Storage abbia un tag specifico. Per istruzioni dettagliate, consulta la sezione Impostazione di un criterio dell'organizzazione con tag.

Passaggi successivi