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 a bucket e oggetti.
Prima di iniziare
Prima di utilizzare la prevenzione dell'accesso pubblico in Cloud Storage, assicurati di disporre del ruolo IAM richiesto e di esaminare 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 assegnarti 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 di Amministratore organizzazione#39;organizzazione.
Per gestire l'impostazione di prevenzione dell'accesso pubblico su un bucket, chiedi all'amministratore di concederti il ruolo Amministratore archiviazione (roles/storage.admin
) sul bucket. Questo ruolo contiene le autorizzazioni necessarie per gestire la prevenzione dell'accesso pubblico a un bucket. Per vedere quali sono esattamente le autorizzazioni richieste,
espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
storage.buckets.update
storage.buckets.setIamPolicy
Per informazioni sulle altre autorizzazioni incluse nel ruolo Amministratore Storage, consulta i dettagli sul ruolo Amministratore Storage.
Esamina le considerazioni
Prima di iniziare, ti consigliamo di assicurarti che nessun flusso di lavoro venga interrotto a causa del blocco dell'accesso pubblico. Per ulteriori dettagli, consulta Considerazioni sull'applicazione alle risorse esistenti.
Utilizzare l'impostazione del bucket
Questa sezione mostra come applicare e rimuovere la prevenzione dell'accesso pubblico per i 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 oppure 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 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 abilitare la prevenzione dell'accesso pubblico o--no-public-access-prevention
per disabilitarla.
Se l'operazione ha esito positivo, la risposta è simile al seguente esempio:
Updating gs://my-bucket/... Completed 1
Librerie client
C++
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
I seguenti esempi impostano la prevenzione dell'accesso pubblico su inherited
per un bucket:
C#
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
I seguenti esempi impostano la prevenzione dell'accesso pubblico su inherited
per un bucket:
Go
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Go.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
I seguenti esempi impostano la prevenzione dell'accesso pubblico su inherited
per un bucket:
Java
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
I seguenti esempi impostano la prevenzione dell'accesso pubblico su inherited
per un bucket:
Node.js
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Node.js.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
I seguenti esempi impostano la prevenzione dell'accesso pubblico su inherited
per un bucket:
PHP
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage PHP.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
I seguenti esempi impostano la prevenzione dell'accesso pubblico su inherited
per un bucket:
Python
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
I seguenti esempi impostano la prevenzione dell'accesso pubblico su inherited
per un bucket:
Ruby
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
I seguenti esempi impostano la prevenzione dell'accesso pubblico su inherited
per un bucket:
API REST
API JSON
Avere la gcloud CLI installata e inizializzata, che ti 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 Cloud Storage, ad esempio la Google Cloud console.
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 cui 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 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
.
Se l'operazione ha esito positivo, la risposta è simile al seguente esempio:
public_access_prevention:inherited
Librerie client
C++
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
C#
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Go
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Go.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Java
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Node.js
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Node.js.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
PHP
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage PHP.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Python
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Ruby
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
API REST
API JSON
Avere la gcloud CLI installata e inizializzata, che ti 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 Cloud Storage, ad esempio la Google Cloud console.
Utilizzare la policy dell'organizzazione
Questa sezione mostra come applicare e rimuovere il criterio dell'organizzazione per la prevenzione dell'accesso pubblico, nonché come verificarne lo 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 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 alla risorsa.disable-enforce
: disabilita 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 padre.
RESOURCE
è la risorsa per cui 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, vedi Utilizzo dei vincoli.
Di seguito è riportato un esempio di 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 e 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 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 cui 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, vedi Utilizzo dei vincoli.