Questa pagina descrive come utilizzare l'impostazione del bucket per la prevenzione dell'accesso pubblico e il vincolo del criterio dell'organizzazione per la prevenzione dell'accesso pubblico. La prevenzione dell'accesso pubblico consente di limitare l'accesso pubblico ai bucket e agli oggetti.
Prima di iniziare
Prima di utilizzare la prevenzione dell'accesso pubblico in Cloud Storage, assicurati di disporre del ruolo IAM richiesto e consulta le considerazioni per l'applicazione della prevenzione dell'accesso pubblico.
Ottenere i ruoli richiesti
Per gestire il criterio dell'organizzazione per la prevenzione dell'accesso pubblico a livello di progetto,
cartella o organizzazione, chiedi all'amministratore di concederti il ruolo
Amministratore criteri dell'organizzazione (roles/orgpolicy.policyAdmin
)
nell'organizzazione. Questo ruolo predefinito contiene le autorizzazioni necessarie per gestire la prevenzione dell'accesso pubblico a livello di progetto, cartella o organizzazione. Per informazioni sulle autorizzazioni incluse in questo ruolo, consulta i dettagli sul ruolo Amministratore organizzazione#39;organizzazione.
Per gestire l'impostazione di prevenzione dell'accesso pubblico in un bucket, chiedi all'amministratore di concederti il ruolo Amministratore archiviazione (roles/storage.admin
) per il bucket. Questo ruolo contiene le autorizzazioni necessarie per gestire la prevenzione dell'accesso pubblico in un bucket. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
storage.buckets.update
storage.buckets.setIamPolicy
Per informazioni sulle altre autorizzazioni incluse nel ruolo Amministratore dello spazio di archiviazione, consulta i dettagli sul ruolo Amministratore dello spazio di archiviazione.
Esamina le considerazioni
Prima di iniziare, ti consigliamo di assicurarti che i flussi di lavoro non vengano interrotti a seguito del blocco dell'accesso pubblico. Per ulteriori dettagli, consulta Considerazioni per l'applicazione delle norme alle risorse esistenti.
Utilizza l'impostazione del bucket
Questa sezione mostra come applicare e rimuovere la prevenzione dell'accesso pubblico per singoli bucket, nonché come controllare lo stato dei singoli bucket.
Imposta la prevenzione dell'accesso pubblico
Per modificare l'impostazione di prevenzione dell'accesso pubblico per un singolo bucket:
Console
- Nella console Google Cloud, vai alla pagina Bucket in Cloud Storage.
Nell'elenco dei bucket, fai clic sul nome del bucket per cui vuoi applicare o rimuovere la prevenzione dell'accesso pubblico.
Nella pagina Dettagli bucket, fai clic sulla scheda Autorizzazioni.
Nella scheda Accesso pubblico, fai clic su Impedisci accesso pubblico per applicare la prevenzione dell'accesso pubblico o su Consenti accesso pubblico per rimuoverla.
Fai clic su Conferma.
Per scoprire come ottenere informazioni dettagliate sugli errori relativi alle operazioni di Cloud Storage non riuscite nella console Google Cloud, consulta la sezione Risoluzione dei problemi.
Riga di comando
Utilizza il comando gcloud storage buckets update
con il
flag appropriato:
gcloud storage buckets update gs://BUCKET_NAME FLAG
Dove:
BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.FLAG
è--public-access-prevention
per attivare la prevenzione dell'accesso pubblico o--no-public-access-prevention
per disattivarla.
In caso di esito positivo, la risposta è simile al seguente esempio:
Updating gs://my-bucket/... Completed 1
Librerie client
C++
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
C#
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
Go
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Go.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
Java
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
Node.js
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Node.js.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
PHP
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage PHP.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
Python
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
Ruby
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
API REST
API JSON
Avere installato e inizializzatogcloud CLI, che consente di generare un token di accesso per l'intestazione
Authorization
.Crea un file JSON contenente le seguenti informazioni:
{ "iamConfiguration": { "publicAccessPrevention": "STATE", } }
dove
<var>STATE</var>
èenforced
oinherited
.Utilizza
cURL
per chiamare l'API JSON con una richiestaPATCH
Bucket che includa ilfields
desiderato:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=iamConfiguration"
Dove:
JSON_FILE_NAME
è il percorso del file JSON che hai creato nel passaggio precedente.BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.
API XML
L'API XML non può essere utilizzata per gestire la prevenzione dell'accesso pubblico. Utilizza uno degli altri strumenti di Cloud Storage, come la console Google Cloud.
Visualizzare lo stato della prevenzione dell'accesso pubblico
Per visualizzare lo stato della prevenzione dell'accesso pubblico per un singolo bucket:
Console
- Nella console Google Cloud, vai alla pagina Bucket in Cloud Storage.
Fai clic sul nome del bucket per il quale vuoi visualizzare lo stato della prevenzione dell'accesso pubblico.
Fai clic sulla scheda Autorizzazioni.
La scheda Accesso pubblico mostra lo stato del bucket.
Per scoprire come ottenere informazioni dettagliate sugli errori relativi alle operazioni di Cloud Storage non riuscite nella console Google Cloud, consulta la sezione Risoluzione dei problemi.
Riga di comando
Utilizza il comando gcloud storage buckets describe
con il flag --format
:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(public_access_prevention)"
dove BUCKET_NAME
è il nome del bucket
di cui vuoi visualizzare lo stato. Ad esempio, my-bucket
.
In caso di esito positivo, la risposta è simile al seguente esempio:
public_access_prevention:inherited
Librerie client
C++
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
C#
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Go
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Go.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Java
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Node.js
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Node.js.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
PHP
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage PHP.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Python
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Ruby
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
API REST
API JSON
Avere installato e inizializzatogcloud CLI, che consente di generare un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API JSON con una richiestaGET
Bucket che includa ilfields
desiderato:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=iamConfiguration"
Dove
BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.La risposta è simile al seguente esempio:
{ "iamConfiguration": { ... "publicAccessPrevention": "FLAG" } }
dove
FLAG
èinherited
oenforced
.
API XML
L'API XML non può essere utilizzata per gestire la prevenzione dell'accesso pubblico. Utilizza uno degli altri strumenti di Cloud Storage, come la console Google Cloud.
Utilizzare il criterio dell'organizzazione
Questa sezione mostra come applicare e rimuovere il criterio dell'organizzazione per la prevenzione dell'accesso pubblico, nonché come controllare il relativo stato.
Imposta la prevenzione dell'accesso pubblico
Per impostare la prevenzione dell'accesso pubblico a livello di progetto, cartella o organizzazione:
Console
Segui le istruzioni riportate in Creazione e gestione dei criteri dell'organizzazione
utilizzando il vincolo storage.publicAccessPrevention
.
Per scoprire come ottenere informazioni dettagliate sugli errori relativi alle operazioni di Cloud Storage non riuscite nella console Google Cloud, consulta la sezione Risoluzione dei problemi.
Riga di comando
Utilizza il comando gcloud beta resource-manager org-policies
:
gcloud beta resource-manager org-policies STATE \ constraints/storage.publicAccessPrevention \ --RESOURCE RESOURCE_ID
Dove:
STATE
può avere i seguenti valori:enable-enforce
: applica la prevenzione dell'accesso pubblico per la risorsa.disable-enforce
: disattiva la prevenzione dell'accesso pubblico per la risorsa.delete
: rimuovi il vincolo del criterio dell'organizzazione dalla risorsa, in modo che la risorsa erediti il valore della risorsa principale.
RESOURCE
è la risorsa per la quale vuoi impostare la prevenzione dell'accesso pubblico. Ad esempio,organization
,project
ofolder
.RESOURCE_ID
è l'ID della risorsa. Ad esempio,123456789012
per un ID organizzazione,245321
per un ID cartella, omy-pet-project
per un ID progetto.
Per ulteriori istruzioni, consulta la sezione Utilizzare le limitazioni.
Di seguito è riportato un esempio dell'output quando utilizzi disable-enforce
:
etag: BwVJi0OOESU= booleanPolicy: {} constraint: constraints/storage.publicAccessPrevention
Visualizzare lo stato della prevenzione dell'accesso pubblico
Per visualizzare lo stato della prevenzione dell'accesso pubblico a livello di progetto, cartella, organizzazione:
Console
Segui le istruzioni riportate in Creazione e gestione dei criteri dell'organizzazione
utilizzando il vincolo storage.publicAccessPrevention
.
Per scoprire come ottenere informazioni dettagliate sugli errori relativi alle operazioni di Cloud Storage non riuscite nella console Google Cloud, consulta la sezione Risoluzione dei problemi.
Riga di comando
Utilizza il comando describe --effective
:
gcloud beta resource-manager org-policies describe \ constraints/storage.publicAccessPrevention --effective \ --RESOURCE RESOURCE_ID
Dove:
RESOURCE
è la risorsa per la quale vuoi visualizzare lo stato della prevenzione dell'accesso pubblico. Ad esempio,organization
,project
ofolder
.RESOURCE_ID
è l'ID della risorsa. Ad esempio,123456789012
per un ID organizzazione,245321
per un ID cartella emy-pet-project
per un ID progetto.
Per ulteriori istruzioni, consulta la sezione Utilizzare le limitazioni.