Questa pagina mostra come abilitare, disabilitare e controllare lo stato dell'accesso uniforme a livello di bucket in un bucket in Cloud Storage.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per impostare e gestire l'accesso uniforme a livello di bucket in un bucket, chiedi all'amministratore di concederti il ruolo Amministratore Storage (roles/storage.admin
) per il bucket. Questo ruolo predefinito contiene le autorizzazioni necessarie per impostare e gestire l'accesso uniforme a livello di bucket. Per visualizzare le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
storage.buckets.get
storage.buckets.list
- Questa autorizzazione è necessaria solo se prevedi di utilizzare la console Google Cloud per eseguire le istruzioni in questa pagina.
storage.buckets.update
Potresti essere in grado di ottenere queste autorizzazioni anche con i ruoli personalizzati.
Per informazioni sulla concessione dei ruoli nei bucket, consulta Utilizzare IAM con i bucket.
Controllare l'utilizzo dell'ACL
Prima di abilitare l'accesso uniforme a livello di bucket, utilizza Cloud Monitoring per assicurarti che il bucket non utilizzi ACL per alcun flusso di lavoro. Per maggiori informazioni, consulta Controllare l'utilizzo dell'ACL degli oggetti.
Console
Per visualizzare le metriche per una risorsa monitorata utilizzando Metrics Explorer, procedi come segue:
-
Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi leaderboard Metrics Explorer:
- Nell'elemento Metrica, espandi il menu Seleziona una metrica, inserisci
ACLs usage
nella barra dei filtri, quindi utilizza i sottomenu per selezionare un tipo di risorsa e una metrica specifici:- Nel menu Risorse attive, seleziona Bucket GCS.
- Nel menu Categorie di metriche attive, seleziona Autorizzazione.
- Nel menu Metriche attive, seleziona Utilizzo ACL.
- Fai clic su Applica.
- Configurare il modo in cui i dati vengono visualizzati. Ad esempio, per visualizzare i dati in base all'operazione ACL, per l'elemento Aggregation, imposta il primo menu su Sum e il secondo su acl_operation.
Per maggiori informazioni sulla configurazione di un grafico, consulta Selezionare le metriche quando si utilizza Metrics Explorer.
Consulta storage
per un elenco completo delle metriche disponibili per
Cloud Storage. Per informazioni sulle serie temporali, consulta
Metriche, serie temporali e risorse.
API JSON
Assicurati che gcloud CLI sia installato e inizializzatoper generare un token di accesso per l'intestazione
Authorization
.In alternativa, puoi creare un token di accesso utilizzando OAuth 2.0 Playground e includerlo nell'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API JSON Monitoring:curl \ 'https://monitoring.googleapis.com/v3/projects/PROJECT_ID/timeSeries?filter=metric.type%20%3D%20%22storage.googleapis.com%2Fauthz%2Facl_operations_count%22&interval.endTime=END_TIME&interval.startTime=START_TIME' \ --header 'Authorization: Bearer $(gcloud auth print-access-token)' \ --header 'Accept: application/json'
Dove:
PROJECT_ID
è l'ID o il numero del progetto di cui vuoi visualizzare l'utilizzo dell'ACL. Ad esempio,my-project
.END_TIME
indica la fine dell'intervallo di tempo per cui vuoi visualizzare l'utilizzo dell'ACL. Ad esempio,2019-11-02T15:01:23.045123456Z
.START_TIME
è l'inizio dell'intervallo di tempo per il quale vuoi visualizzare l'utilizzo dell'ACL. Ad esempio,2016-10-02T15:01:23.045123456Z
.
Se la richiesta restituisce un oggetto vuoto {}
, non vi è alcun utilizzo recente di ACL per il tuo progetto.
Imposta l'accesso uniforme a livello di bucket
Per abilitare o disabilitare l'accesso uniforme a livello di bucket nel tuo bucket, segui queste istruzioni:
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 abilitare o disabilitare l'accesso uniforme a livello di bucket.
Seleziona la scheda Autorizzazioni nella parte superiore della pagina.
Nel campo denominato Controllo accesso, fai clic sul link Passa a.
Nel menu visualizzato, seleziona Uniforme o Granulare.
Fai clic su Salva.
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
:
gcloud storage buckets update gs://BUCKET_NAME --STATE
Dove:
BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.STATE
èuniform-bucket-level-access
per abilitare l'accesso uniforme a livello di bucket ono-uniform-bucket-level-access
per disabilitarlo.
Librerie client
C++
Per maggiori informazioni, consulta la documentazione di riferimento dell'API C++ di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio consente l'accesso uniforme a livello di bucket in un bucket:
Il seguente esempio disabilita l'accesso uniforme a livello di bucket in un bucket:
C#
Per maggiori informazioni, consulta la documentazione di riferimento dell'API C# di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio consente l'accesso uniforme a livello di bucket in un bucket:
Il seguente esempio disabilita l'accesso uniforme a livello di bucket in un bucket:
Go
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Go di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio consente l'accesso uniforme a livello di bucket in un bucket:
Il seguente esempio disabilita l'accesso uniforme a livello di bucket in un bucket:
Java
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Java di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio consente l'accesso uniforme a livello di bucket in un bucket:
Il seguente esempio disabilita l'accesso uniforme a livello di bucket in un bucket:
Node.js
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Node.js di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio consente l'accesso uniforme a livello di bucket in un bucket:
Il seguente esempio disabilita l'accesso uniforme a livello di bucket in un bucket:
PHP
Per maggiori informazioni, consulta la documentazione di riferimento dell'API PHP di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio consente l'accesso uniforme a livello di bucket in un bucket:
Il seguente esempio disabilita l'accesso uniforme a livello di bucket in un bucket:
Python
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Python di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio consente l'accesso uniforme a livello di bucket in un bucket:
Il seguente esempio disabilita l'accesso uniforme a livello di bucket in un bucket:
Ruby
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Ruby di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Il seguente esempio consente l'accesso uniforme a livello di bucket in un bucket:
Il seguente esempio disabilita l'accesso uniforme a livello di bucket in un bucket:
API REST
API JSON
Assicurati che gcloud CLI sia installato e inizializzatoper generare un token di accesso per l'intestazione
Authorization
.In alternativa, puoi creare un token di accesso utilizzando OAuth 2.0 Playground e includerlo nell'intestazione
Authorization
.Crea un file JSON contenente le seguenti informazioni:
{ "iamConfiguration": { "uniformBucketLevelAccess": { "enabled": STATE } } }
Dove STATE è
true
ofalse
.Utilizza
cURL
per chiamare l'API JSON con una richiesta di bucketPATCH
: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 creato nel passaggio 2.BUCKET_NAME
è il nome del bucket pertinente. Ad esempio,my-bucket
.
API XML
L'API XML non può essere utilizzata per lavorare con un accesso uniforme a livello di bucket. Utilizza invece uno degli altri strumenti di Cloud Storage, come gcloud CLI.
Visualizza lo stato di accesso uniforme a livello di bucket
Console
- Nella console Google Cloud, vai alla pagina Bucket di Cloud Storage.
Fai clic sul nome del bucket di cui vuoi visualizzare lo stato.
Fai clic sulla scheda Configuration (Configurazione).
Lo stato di accesso uniforme a livello di bucket per il bucket si trova nel campo Controllo dell'accesso.
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(uniform_bucket_level_access)"
Dove BUCKET_NAME
è il nome del bucket pertinente. Ad esempio, my-bucket
.
In caso di esito positivo, la risposta sarà simile a:
uniform_bucket_level_access: true
Librerie client
C++
Per maggiori informazioni, consulta la documentazione di riferimento dell'API C++ di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
C#
Per maggiori informazioni, consulta la documentazione di riferimento dell'API C# di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Go di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Java di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Node.js di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Per maggiori informazioni, consulta la documentazione di riferimento dell'API PHP di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Python di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Ruby di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
API REST
API JSON
Assicurati che gcloud CLI sia installato e inizializzatoper generare un token di accesso per l'intestazione
Authorization
.In alternativa, puoi creare un token di accesso utilizzando OAuth 2.0 Playground e includerlo nell'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API JSON con una richiesta bucketGET
che include 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 bucket pertinente. Ad esempio,my-bucket
.Se nel bucket è abilitato l'accesso uniforme a livello di bucket, la risposta sarà simile all'esempio seguente:
{ "iamConfiguration": { "uniformBucketLevelAccess": { "enabled": true, "lockedTime": "LOCK_DATE" } } }
API XML
L'API XML non può essere utilizzata per lavorare con un accesso uniforme a livello di bucket. Utilizza invece uno degli altri strumenti di Cloud Storage, come gcloud CLI.
Passaggi successivi
- Scopri di più sull'accesso uniforme a livello di bucket.
- Imposta le autorizzazioni IAM su bucket e progetti.