La maggior parte delle operazioni che esegui in Cloud Storage deve essere
autenticati. Le uniche eccezioni sono le operazioni sulle risorse che consentono
accesso anonimo. Una risorsa ha accesso anonimo se il gruppo allUsers
è
incluso nell'ACL per la risorsa o se il gruppo allUsers
è incluso
un criterio IAM applicabile alla risorsa. Il gruppo allUsers
include chiunque su Internet.
Autenticazione OAuth 2.0
Cloud Storage utilizza OAuth 2.0 per API l'autenticazione e l'autorizzazione. L'autenticazione è il processo di determinazione l'identità di un client. I dettagli dell'autenticazione variano a seconda di come accedi a Cloud Storage, ma rientrano in due tipologie generali:
Un flusso incentrato sul server consente a un'applicazione di contenere direttamente le credenziali di un account di servizio per completare l'autenticazione. Utilizza questo flusso se la tua applicazione utilizza i propri dati anziché quelli dell'utente. Google Cloud i progetti hanno account di servizio predefiniti che puoi utilizzare. In alternativa, puoi crearne di nuovi quelli.
Un flusso incentrato sull'utente consente a un'applicazione di ottenere le credenziali da un terminale utente. L'utente accede per completare l'autenticazione. Usa questa procedura se le tue l'applicazione deve accedere ai dati utente. Fai riferimento a Credenziali dell'account utente per scenari in cui è appropriato un flusso incentrato sull'utente.
Tieni presente che puoi utilizzare entrambi i tipi di autenticazione in una un'applicazione. Per ulteriori informazioni sull'autenticazione, consulta Guida all'autenticazione Google Cloud.
Autenticazione dell'interfaccia a riga di comando
Se lavori con Cloud Storage utilizzando Google Cloud CLI,
in genere deve autenticarsi con le credenziali del tuo account utente. Per farlo,
esegui il comando gcloud auth login
e segui le istruzioni,
include l'accesso al tuo account utente. Per altre opzioni di autenticazione,
consulta Autenticazione per l'utilizzo di gcloud CLI.
Autenticazione della libreria client
Le librerie client possono utilizzare le credenziali predefinite dell'applicazione per autenticarsi facilmente con le API di Google e inviare richieste a queste API. Con Credenziali predefinite dell'applicazione, puoi testare l'applicazione in locale ed eseguirne il deployment senza modificare il codice sottostante. Per ulteriori informazioni, consulta <atrack-type="common generate" l10n-attrs-original-order="href,track-type,track-name" l10n-encrypted-href="WDE63JFVMK0YqIWBqG8nCycgwkRfOeEqRvzYs1N+2tJUEhcZvE5WLink-reference for AuthenticatehcZvE5WLink-reference for Authenticate
Google Cloud
Se esegui la tua applicazione su servizi che supportano account di servizio collegati, come App Engine, Cloud Functions Cloud Run, o Compute Engine, l'ambiente già fornisce le informazioni di autenticazione dell'account di servizio, in modo che è richiesta la configurazione. Per Compute Engine, l'ambito dell'account di servizio dipende da come hai creato l'istanza. Consulta Ambiti di accesso nella documentazione di Compute Engine. Per App Engine, viene utilizzato l'ambito
cloud-platform
.Altri ambienti
Per inizializzare il tuo ambiente di sviluppo o produzione locale, crea una l'account di servizio Google Cloud, scarica la relativa chiave e imposta
GOOGLE_APPLICATION_CREDENTIALS
variabile di ambiente per utilizzare la chiave. Per informazioni dettagliate, consulta la sezione Configurare l'autenticazione con Librerie client di Cloud Storage.
Autenticazione API
Per effettuare richieste utilizzando OAuth 2.0 con l'API XML di Cloud Storage
o l'API JSON, includi il token di accesso della tua applicazione nel
Authorization
in ogni richiesta che richiede l'autenticazione. Puoi
genera un token di accesso da OAuth 2.0 Playground:
In OAuth 2.0 Playground, fai clic su API Cloud Storage v1, e seleziona un livello di accesso per la tua applicazione (
full_control
,read_only
oread_write
).Fai clic su Authorize APIs (Autorizza API)
Quando richiesto, accedi al tuo account. Nella finestra di dialogo visualizzata, fai clic su Consenti.
Nel passaggio 2 della sala giochi, fai clic su Exchange Authorization code for tokens (Scambia codice di autorizzazione per i token) per il codice di autorizzazione visualizzato.
Copia il tuo token di accesso e includilo nell'intestazione
Authorization
del tuo richiesta:Authorization: Bearer OAUTH2_TOKEN
Di seguito è riportato un esempio di richiesta che elenca gli oggetti in un bucket.
API JSON
Utilizza il metodo list del metodo degli oggetti.
GET /storage/v1/b/example-bucket/o HTTP/1.1 Host: www.googleapis.com Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg
Per autorizzare le richieste dalla riga di comando o a scopo di test, puoi utilizzare curl con la seguente sintassi:
curl -H "Authorization: Bearer OAUTH2_TOKEN""https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o"
Per i test locali, puoi utilizzare
comando gcloud auth application-default print-access-token
per generare
di accesso.
API XML
Utilizza una richiesta Elenco oggetti.
GET / HTTP/1.1 Host: example-bucket.storage.googleapis.com Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg
Per autorizzare le richieste dalla riga di comando o a scopo di test, puoi utilizzare curl con la seguente sintassi:
curl -H "Authorization: Bearer OAUTH2_TOKEN""https://BUCKET_NAME.storage.googleapis.com"
Per i test locali, puoi utilizzare
comando gcloud auth application-default print-access-token
per generare
di accesso.
A causa della complessità della gestione e dell'aggiornamento dei token di accesso e della quando si gestiscono direttamente le applicazioni crittografiche, Ti invitiamo a utilizzare una libreria client verificata.
Se stai cercando chiavi HMAC da utilizzare con l'API XML per l'accesso interoperabile con Amazon S3, consulta Gestione delle chiavi HMAC per gli account di servizio.
Passaggi successivi
- Scopri di più sui download basati su browser utilizzando l'autenticazione mediante cookie.
- Scopri come vengono utilizzati gli account di servizio generalmente in Google Cloud e in particolare in Cloud Storage
- Scopri di più sugli ambiti OAuth 2.0 di Cloud Storage.