Bucket, oggetti e ACL
Il bucket è la posizione di archiviazione da cui leggi e in cui scrivi i file. Tu deve sempre specificare un bucket quando si utilizza la libreria client di App Engine per di archiviazione ideale in Cloud Storage. Il progetto può accedere a più bucket. Tieni presente che la libreria del client non supporta la creazione di bucket.
Gli elenchi di controllo dell'accesso (ACL) controllano l'accesso ai bucket e agli oggetti contenuti al loro interno. Il progetto e l'app App Engine vengono aggiunti automaticamente all'ACL che consente l'accesso al bucket quando crei un bucket nel progetto.
Tieni presente che l'ACL che consente l'accesso al bucket è distinto dai potenzialmente numerosi ACL che regolano gli oggetti al suo interno. Di conseguenza, la tua app ha letto di scrittura per i bucket per cui è attivata, ma dispone solo per gli oggetti che crea nel bucket. L'accesso dell'app agli oggetti create da altre app o persone è limitata ai diritti concessi alla tua app da dell'oggetto creator.
Se un oggetto viene creato nel bucket senza un ACL definito in modo esplicito,
utilizza l'ACL dell'oggetto predefinito assegnato al bucket dal proprietario. Se il proprietario del bucket non ha specificato un ACL dell'oggetto predefinito, l'impostazione predefinita dell'oggetto è public-read
, il che significa che chiunque abbia accesso al bucket può leggere l'oggetto.
ACL e libreria client
Un'app che utilizza la libreria client non può modificare l'ACL del bucket, ma può specificare un ACL che controlla l'accesso agli oggetti che crea. Le impostazioni ACL disponibili sono descritte nella documentazione relativa al metodo open.Modifica degli oggetti Cloud Storage
Una volta creato un oggetto in un bucket, non puoi modificarlo né aggiungervi elementi. Devi invece sovrascrivere l'oggetto con un nuovo oggetto con lo stesso nome che contenga le modifiche che ti interessano.
Cloud Storage e sottodirectory
La libreria client App Engine per Cloud Storage ti consente di specificare delimitatori di sottodirectory quando crei un oggetto, ma in Cloud Storage non esistono sottodirectory vere e proprie. Una sottodirectory in Cloud Storage fa invece parte del nome del file dell'oggetto.
Ad esempio, potresti presumere che la creazione di un oggetto
somewhere/over/the/rainbow.mp3
archivierà il file rainbow.mp3
nel
sottodirectory somewhere/over/the/
. Il nome dell'oggetto è invece impostato
somewhere/over/the/rainbow.mp3
.
Questo concetto è importante da comprendere quando si utilizzano i filtri listbucket
.
Se il comportamento della scheda sopra indicato non è ottimale per te, listbucket
ha una modalità di emulazione della directory facoltativa. Per ulteriori informazioni, consulta
listbucket.
Passaggi successivi
- Consulta la documentazione di riferimento dell'API.
- Scopri come configurare Cloud Storage.