Halaman ini menjelaskan cara mengganti nama folder di bucket dengan namespace hierarkis yang diaktifkan.
Operasi penggantian nama secara rekursif mengganti nama folder, folder turunannya, dan resource terkait, termasuk objek dan folder terkelola dalam satu tindakan atomik.
Operasi penggantian nama bersifat atomik. Operasi berhasil diselesaikan dan memindahkan resource ke jalur barunya atau gagal dengan error. Jika terjadi error, semua resource akan dipulihkan ke status aslinya.
Di bucket dengan namespace hierarkis yang diaktifkan, mengganti nama folder adalah operasi khusus metadata. Metode ini tidak melibatkan pemindahan atau penyalinan objek secara fisik di dalam folder, sehingga tidak menimbulkan biaya penyalinan objek.
Namun, di bucket yang tidak mengaktifkan namespace hierarkis, folder akan disimulasikan. Mengganti nama atau memindahkan folder yang disimulasikan memerlukan penyalinan dan penghapusan setiap objek di dalamnya. Jika folder Anda berisi banyak objek, proses penggantian nama mungkin tidak efisien dan mahal. Mengganti nama atau memindahkan folder yang disimulasikan juga bersifat non-atomik, yang berarti jika prosesnya gagal, bucket Anda mungkin dibiarkan dalam status tidak konsisten, dengan hanya beberapa objek yang dipindahkan.
Selama proses penggantian nama folder, Anda dapat membaca dan membuat daftar resource yang diubah namanya. Namun, Anda tidak dapat menjalankan operasi tulis pada resource yang terpengaruh.
Operasi penggantian nama folder akan memulai operasi yang berjalan lama pada bucket.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna mengganti nama folder di bucket, minta administrator untuk memberi Anda peran IAM Pengguna Objek Penyimpanan (roles/storage.objectUser
) di bucket.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran pada project, lihat Mengelola akses ke project.
Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:
Izin yang diperlukan
storage.folders.rename
- Izin ini diperlukan di folder sumber.
storage.folders.create
- Izin ini diperlukan di folder tujuan.
Anda juga bisa mendapatkan izin sebelumnya dengan peran khusus atau peran bawaan lainnya. Untuk peran yang lebih permisif dan memungkinkan Anda mengelola folder serta mengganti nama folder, minta administrator untuk memberi Anda salah satu peran berikut:
- Admin Folder Penyimpanan (
roles/storage.folderAdmin
) - Storage Object Admin (
roles/storage.objectAdmin
) - Admin Penyimpanan (
roles/storage.admin
)
Untuk melihat peran yang dikaitkan dengan izin tertentu, lihat Peran IAM untuk Cloud Storage.
Mengganti nama folder
Library klien
C++
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C++ API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Go API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage PHP API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Ruby API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
REST API
JSON API
Sudah menginstal dan melakukan inisialisasigcloud CLI, guna membuat token akses untuk header
Authorization
.Atau, Anda dapat membuat token akses menggunakan OAuth 2.0 Playground dan menyertakannya di header
Authorization
.Gunakan
cURL
untuk memanggil JSON API dengan permintaan untuk mengganti nama folder:curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/folders/SOURCE_PATH/renameTo/folders/DESTINATION_PATH"
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang berisi folder yang ingin Anda ganti namanya. Contoh,my-bucket
.SOURCE_PATH
adalah jalur yang dienkode URL dari folder sumber. Misalnya, URLmy-src-folder/
dienkode sebagaimy-src-folder%2F
.DESTINATION_PATH
adalah jalur yang dienkode URL dari folder tujuan. Misalnya, URLmy-dest-folder/
dienkode sebagaimy-dest-folder%2F
.
Langkah berikutnya
Cobalah sendiri
Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa Cloud Storage dalam skenario dunia nyata. Pelanggan baru mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
Coba Cloud Storage gratis