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 disponi del ruolo IAM richiesto ed esamina le considerazioni sull'applicazione della prevenzione dell'accesso pubblico.
Ottenere i ruoli richiesti
Per gestire i criteri dell'organizzazione per la prevenzione dell'accesso pubblico a livello di progetto,
cartella o organizzazione, chiedi all'amministratore di assegnarti il ruolo
Amministratore dei 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
dettagli sul ruolo Amministratore organizzazione.
Per gestire l'impostazione di prevenzione dell'accesso pubblico in un bucket, chiedi al tuo
che ti conceda il ruolo Amministratore Storage (roles/storage.admin
)
sul bucket. Questo ruolo contiene le autorizzazioni necessarie per gestire le risorse pubbliche
della prevenzione dell'accesso
su 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 nella sezione Ruolo di amministratore, consulta dettagli sul ruolo Amministratore Storage.
Esamina le considerazioni
Prima di iniziare, ti consigliamo di assicurarti che il blocco dell'accesso pubblico non interrompa i flussi di lavoro. Consulta: Per ulteriori dettagli, considera l'applicazione delle 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 di 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 prevenzione dell'accesso pubblico o fai clic su Consenti accesso pubblico per rimuovere prevenzione dell'accesso pubblico.
Fai clic su Conferma.
Scopri come ottenere informazioni dettagliate sugli errori relativi a Cloud Storage non riusciti nella console Google Cloud, vedi 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 ulteriori informazioni, consulta API Cloud Storage C++ documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio applica la prevenzione dell'accesso pubblico in un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
C#
Per ulteriori informazioni, consulta API Cloud Storage C# documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Nell'esempio seguente, la prevenzione dell'accesso pubblico viene impostata su inherited
per un bucket:
Go
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Go.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio applica la prevenzione dell'accesso pubblico in un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
Java
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio applica la prevenzione dell'accesso pubblico a un bucket:
Nell'esempio seguente, la prevenzione dell'accesso pubblico viene impostata su inherited
per un bucket:
Node.js
Per ulteriori informazioni, consulta API Cloud Storage Node.js documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
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 ulteriori informazioni, consulta API Cloud Storage PHP documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
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 ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio applica la prevenzione dell'accesso pubblico in un bucket:
Nell'esempio seguente, la prevenzione dell'accesso pubblico viene impostata su inherited
per un bucket:
Ruby
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio applica la prevenzione dell'accesso pubblico in un bucket:
Il seguente esempio imposta la prevenzione dell'accesso pubblico su inherited
per un bucket:
API REST
API JSON
Avere gcloud CLI installato e inizializzato, che consente generi 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. Utilizzane uno degli altri strumenti di Cloud Storage, come la console Google Cloud, .
Visualizzare lo stato della prevenzione dell'accesso pubblico
Per visualizzare lo stato di prevenzione dell'accesso pubblico per un singolo bucket:
Console
- Nella console Google Cloud, vai alla pagina Bucket di Cloud Storage.
Fai clic sul nome del bucket per il quale vuoi visualizzare il pubblico e lo stato di prevenzione dell'accesso.
Fai clic sulla scheda Autorizzazioni.
La scheda Accesso pubblico mostra lo stato del bucket.
Scopri come ottenere informazioni dettagliate sugli errori relativi a Cloud Storage non riusciti nella console Google Cloud, vedi Risoluzione dei problemi.
Riga di comando
Utilizza il comando gcloud storage buckets describe
con
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'esito è positivo, la risposta sarà simile al seguente esempio:
public_access_prevention:inherited
Librerie client
C++
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
C#
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Per ulteriori informazioni, consulta API Cloud Storage Go documentazione di riferimento.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Node.js.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Per ulteriori informazioni, consulta API Cloud Storage PHP documentazione di riferimento.
Per autenticarti a Cloud Storage, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per ulteriori informazioni, consulta API Cloud Storage Python documentazione di riferimento.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
API REST
API JSON
Avere gcloud CLI installato e inizializzato, che consente generi un token di accesso per l'intestazione
Authorization
.Usa
cURL
per chiamare l'API JSON con un bucketGET
che includa il valorefields
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 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.
Utilizza il criterio dell'organizzazione
Questa sezione mostra come applicare in modo forzato e rimuovere la prevenzione dell'accesso pubblico dell'organizzazione e 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
.
Scopri come ottenere informazioni dettagliate sugli errori relativi a Cloud Storage non riusciti nella console Google Cloud, vedi 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 Utilizzo dei vincoli.
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 Creare e gestire i 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.