Halaman ini menjelaskan cara menggunakan endpoint lokasi untuk mengakses Cloud Storage. Endpoint lokasi memungkinkan Anda menjalankan workload dengan cara yang sesuai dengan International Traffic in Arms Regulations (ITAR).
Untuk mengetahui informasi tentang batasan saat menggunakan Cloud Storage dengan cara yang sesuai dengan ITAR, lihat Batasan dan limitasi ITAR.
Ringkasan
Endpoint lokasi adalah endpoint permintaan yang hanya mengizinkan permintaan untuk dilanjutkan jika resource yang terpengaruh ada di lokasi yang ditentukan oleh endpoint. Misalnya, saat Anda menggunakan endpoint https://us-central1-storage.googleapis.com
dalam permintaan penghapusan bucket, permintaan hanya akan dilanjutkan jika bucket berada di US-CENTRAL1
.
Tidak seperti endpoint global, tempat permintaan dapat diproses di lokasi yang berbeda dari tempat resource berada, endpoint lokasi memastikan bahwa permintaan Anda hanya akan diproses dalam lokasi yang ditentukan oleh endpoint, tempat resource berada. Saat menggunakan endpoint lokasi, Anda dapat memastikan bahwa data dalam penyimpanan dan data dalam pengiriman tetap berada dalam wilayah hukum untuk memenuhi persyaratan residensi data.
Penggunaan endpoint lokasi menjamin bahwa:
Data Anda yang disimpan di Cloud Storage tidak keluar dari lokasi yang ditentukan.
Data Anda dihentikan TLS di region yang ditentukan oleh endpoint saat transit dari infrastruktur lokal ke Google Cloud.
Data Anda tetap berada dalam wilayah hukum saat transit antar-layanan Google Cloud.
Saat menggunakan endpoint lokasi, Anda memiliki tanggung jawab berikut:
Untuk mendapatkan jaminan residensi data, permintaan yang dibuat ke endpoint lokasi harus berasal dari lokasi yang sama dengan yang ditetapkan oleh endpoint tersebut. Misalnya, jika Anda menggunakan virtual machine Compute Engine untuk membuat permintaan ke bucket yang berada di
US-CENTRAL1
melalui endpointus-central1-storage.googleapis.com
, virtual machine tersebut juga harus berada diUS-CENTRAL1
.Endpoint lokasi hanya boleh digunakan saat melakukan operasi yang didukung. Menjalankan operasi yang tidak didukung akan menyebabkan error.
Endpoint lokasi mendukung traffic dalam pengiriman antara infrastruktur lokal ke Google Cloud melalui Interconnect atau VPN, dan traffic dalam pengiriman antara layanan Google Cloud (misalnya, dari BigQuery ke Cloud Storage). Traffic internet tidak didukung.
Operasi yang didukung
Tabel berikut merangkum operasi yang dapat dan tidak dapat dilakukan dengan endpoint lokasi. Secara umum, operasi intra-lokasi dapat dilakukan dengan endpoint lokasi, sedangkan operasi lintas lokasi tidak dapat dilakukan.
Jika Anda mencoba menjalankan operasi yang tidak didukung menggunakan endpoint lokasi, Cloud Storage akan menampilkan kode error HTTP 400 dengan pesan: "Endpoint ini tidak menerapkan operasi ini. Gunakan endpoint global."
Operasi | Mengubah data objek | Didukung untuk penggunaan dengan endpoint lokasi |
---|---|---|
penyusunan objek | Ya | Ya1 |
penghapusan objek | Tidak | Ya1 |
peraihan objek | Ya | Ya1 |
penyisipan objek | Ya | Ya1 |
pencantuman objek | Tidak | Ya1 |
patch objek | Tidak | Ya1 |
penyalinan objek | Ya | Ya4 |
penulisan ulang objek | Ya | Ya4 |
penyisipan bucket | Tidak | Ya2 |
penghapusan bucket | Tidak | Ya3 |
peraihan bucket | Tidak | Ya2 |
patch bucket | Tidak | Ya2 |
pembaruan bucket | Tidak | Ya2 |
getIamPolicy bucket | Tidak | Ya2 |
setIamPolicy bucket | Tidak | Ya2 |
testIamPermissions bucket | Tidak | Ya2 |
lockRetentionPolicy bucket | Tidak | Ya2 |
BucketAccessControls bucket | Tidak | Ya2 |
DefaultObjectAccessControls bucket | Tidak | Ya2 |
ObjectAccessControls bucket | Tidak | Ya2 |
Operasi kunci HMAC | Tidak | Tidak |
Operasi akun layanan | Tidak | Tidak |
Operasi notifikasi Pub/Sub | Bervariasi berdasarkan operasi | Tidak |
Operasi notifikasi perubahan objek | Bervariasi berdasarkan operasi | Tidak |
Operasi batch | Bervariasi berdasarkan operasi | Tidak |
1 Untuk menjalankan operasi ini menggunakan endpoint lokasi, bucket yang berisi objek yang terpengaruh harus ada di lokasi yang ditentukan oleh endpoint. Misalnya: permintaan penghapusan objek ke us-central1-storage.googleapis.com
hanya dapat digunakan untuk menghapus objek dalam bucket yang berada di region US-CENTRAL1
. Jika Anda mencoba menghapus objek di lokasi yang bukan US-CENTRAL1
, operasi akan menampilkan error NOT_FOUND
.
2 Untuk menjalankan operasi ini menggunakan endpoint lokasi, bucket harus ada di lokasi yang ditentukan oleh endpoint. Misalnya: permintaan pembuatan bucket ke us-central1-storage.googleapis.com
hanya dapat digunakan untuk membuat bucket di region US-CENTRAL1
. Jika Anda mencoba membuat bucket di lokasi yang bukan US-CENTRAL1
, operasi akan menampilkan error INVALID_ARGUMENT
.
3 Untuk menjalankan operasi ini menggunakan endpoint lokasi, bucket harus ada di lokasi yang ditentukan oleh endpoint. Misalnya: permintaan penghapusan bucket ke us-central1-storage.googleapis.com
hanya dapat digunakan untuk menghapus bucket di region US-CENTRAL1
. Jika Anda mencoba menghapus bucket di lokasi yang bukan US-CENTRAL1
, operasi akan menampilkan error NOT_FOUND
.
4 Untuk menjalankan operasi ini menggunakan endpoint lokasi, bucket sumber dan tujuan harus ada di lokasi yang ditentukan oleh endpoint. Misalnya: Anda dapat menggunakan endpoint lokasi untuk menyalin objek dari satu bucket ke bucket lain jika kedua bucket ada di lokasi yang sama. Namun, Anda tidak dapat menggunakan endpoint lokasi untuk menyalin objek dari satu bucket ke bucket lain jika bucket ada di lokasi yang berbeda. Jika bucket sumber atau tujuan ada di lokasi yang berbeda dengan lokasi yang ditentukan oleh endpoint, operasi akan menampilkan error NOT_FOUND
.
Region yang didukung
Endpoint lokasi didukung untuk semua region AS, multi-region US
, dan region ganda NAM4
yang telah ditetapkan. Untuk mengetahui informasi selengkapnya tentang region yang dapat ditentukan, lihat Lokasi bucket.
Membuat permintaan
Konsol
Lihat Batasan dan limitasi ITAR untuk mengetahui informasi tentang cara melakukan operasi menggunakan konsol Google Cloud dengan cara yang sesuai dengan ITAR.
Command line
Untuk mengonfigurasi Google Cloud CLI agar dapat digunakan dengan endpoint lokasi:
Tetapkan properti
api_endpoint_overrides/storage
ke endpoint lokasi yang ingin Anda gunakan:gcloud config set api_endpoint_overrides/storage https://LOCATION-storage.googleapis.com/
Setelah properti ini ditetapkan, Anda dapat menggunakan perintah gcloud CLI seperti biasa.
Atau, Anda dapat menggunakan endpoint lokasi untuk setiap perintah dengan menetapkan variabel lingkungan CLOUDSDK_API_ENDPOINT_OVERRIDES_STORAGE
di setiap perintah. Contoh:
CLOUDSDK_API_ENDPOINT_OVERRIDES_STORAGE=https://LOCATION-storage.googleapis.com/ gcloud ls gs://my-bucket
Library klien
Library klien Cloud Storage mengelola endpoint permintaan secara otomatis, tetapi Anda dapat menetapkan endpoint lokasi secara manual. Untuk mempelajari cara menetapkan endpoint lokasi, lihat contoh kode library klien menggunakan endpoint permintaan.
REST API
JSON API
Saat membuat permintaan ke endpoint lokasi, gunakan URI berikut:
Untuk permintaan JSON API umum, kecuali upload objek, gunakan endpoint berikut:
https://LOCATION-storage.googleapis.com
Ganti LOCATION dengan lokasi bucket yang didukung. Contohnya,
us-central1
.Untuk upload objek JSON API, gunakan endpoint berikut:
https://LOCATION-storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o
Replace:
LOCATION dengan lokasi bucket yang didukung. Contohnya,
us-central1
.BUCKET_NAME dengan nama bucket tempat Anda ingin mengupload objek. Contoh,
my-example-bucket
.
Untuk download objek JSON API, gunakan endpoint berikut:
https://LOCATION-storage.googleapis.com/download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media
Replace:
LOCATION dengan lokasi bucket yang didukung. Contohnya,
us-central1
.BUCKET_NAME dengan nama bucket yang berisi objek yang ingin didownload. Misalnya,
my-example-bucket
.OBJECT_NAME dengan nama objek yang ingin Anda download. Contoh,
waterfall.png
.
Perlu diperhatikan bahwa endpoint JSON API hanya mendukung permintaan HTTPS.
XML API
Saat menggunakan XML API untuk membuat permintaan ke endpoint lokasi, Anda dapat menggunakan endpoint gaya yang dihosting virtual atau endpoint gaya jalur:
Endpoint gaya yang dihosting virtual:
https://BUCKET_NAME.LOCATION-storage.googleapis.com
Endpoint path-style
https://LOCATION-storage.googleapis.com/BUCKET_NAME
Untuk kedua jenis endpoint, ganti:
LOCATION dengan lokasi bucket yang didukung. Contohnya,
us-central1
.BUCKET_NAME dengan nama bucket yang valid. Misalnya,
my-example-bucket
.
Endpoint API XML mendukung enkripsi lapisan soket aman (SSL), yang berarti Anda dapat menggunakan HTTP atau HTTPS. Sebaiknya gunakan HTTPS, terutama jika Anda mengautentikasi ke Cloud Storage menggunakan OAuth 2.0.
Memformat permintaan dengan benar
Untuk memastikan permintaan Anda kompatibel di seluruh alat Cloud Storage:
Pastikan Anda mengenkode karakter khusus dengan benar yang muncul dalam nama objek atau string kueri URI permintaan.
Pelajari penamaan bucket dan pertimbangan penamaan objek.
Batasan yang diketahui
Tidak ada dukungan untuk endpoint mTLS.