Halaman ini memberikan informasi tambahan tentang batasan kebijakan organisasi yang berlaku untuk Cloud Storage. Gunakan batasan untuk menerapkan perilaku bucket dan objek di seluruh project atau organisasi. Batasan kebijakan organisasi dapat berupa boolean constraints atau batasan daftar.
Batasan Cloud Storage
Batasan berikut dapat diterapkan pada kebijakan organisasi dan berkaitan dengan Cloud Storage:
Menerapkan pencegahan akses publik
Nama Batasan: constraints/storage.publicAccessPrevention
Jenis Batasan: boolean
Saat Anda menerapkan batasan publicAccessPrevention
pada resource,
akses publik dibatasi untuk semua bucket dan objek, baik yang baru maupun
yang sudah ada, pada resource tersebut.
Perlu diperhatikan bahwa diperlukan waktu hingga 10 menit untuk mengaktifkan atau menonaktifkan publicAccessPrevention
.
Hapus durasi retensi untuk sementara
Nama Batasan: constraints/storage.softDeletePolicySeconds
Jenis Batasan: list
Saat menerapkan batasan softDeletePolicySeconds
, Anda menentukan satu atau beberapa durasi sebagai bagian dari batasan. Setelah ditetapkan, kebijakan penghapusan untuk sementara bucket harus menyertakan salah satu durasi yang ditentukan.
softDeletePolicySeconds
diperlukan saat membuat bucket baru dan saat menambahkan atau memperbarui durasi retensi penghapusan sementara (softDeletePolicy.retentionDuration
) dari bucket yang sudah ada; namun, bucket yang sudah ada tidak terpengaruh.
Jika Anda menetapkan beberapa batasan softDeletePolicySeconds
pada level resource yang berbeda, batasan tersebut akan diterapkan secara hierarkis. Karena alasan ini, sebaiknya tetapkan kolom inheritFromParent
ke true
, yang memastikan bahwa kebijakan di lapisan yang lebih tinggi juga dipertimbangkan.
Durasi kebijakan retensi bucket dalam detik
Nama Batasan: constraints/storage.retentionPolicySeconds
Jenis Batasan: list
Saat menerapkan batasan retentionPolicySeconds
, Anda menentukan satu atau beberapa durasi sebagai bagian dari batasan. Setelah ditetapkan, kebijakan retensi bucket harus menyertakan salah satu durasi yang ditentukan. retentionPolicySeconds
diperlukan saat membuat bucket baru dan saat menambahkan atau memperbarui periode
retensi bucket yang sudah ada; tetapi tidak diperlukan pada
bucket yang sudah ada sebelumnya.
Jika Anda menetapkan beberapa batasan retentionPolicySeconds
pada level resource yang berbeda, batasan tersebut akan diterapkan secara hierarkis. Karena alasan ini, sebaiknya tetapkan kolom inheritFromParent
ke true
, yang memastikan bahwa kebijakan di lapisan yang lebih tinggi juga dipertimbangkan.
Mewajibkan akses level bucket yang seragam
Nama Batasan: constraints/storage.uniformBucketLevelAccess
Jenis Batasan: boolean
Saat Anda menerapkan batasan uniformBucketLevelAccess
, bucket baru harus mengaktifkan fitur akses level bucket seragam, dan bucket yang sudah ada dan sudah mengaktifkan fitur ini tidak dapat menonaktifkannya. Bucket yang sudah ada sebelumnya dan menonaktifkan akses level bucket seragam tidak diwajibkan untuk mengaktifkannya.
Mode logging audit mendetail
Nama Batasan: constraints/gcp.detailedAuditLoggingMode
Jenis Batasan: boolean
Saat Anda menerapkan batasan detailedAuditLoggingMode
, log Cloud Audit Logs yang terkait dengan operasi Cloud Storage berisi informasi permintaan dan respons yang mendetail. Batasan ini direkomendasikan untuk digunakan bersama dengan Bucket Lock dan Object Retention Lock saat mencari berbagai kepatuhan seperti SEC Rule 17a-4(f), CFTC Rule
1.31(c)-(d), dan FINRA Rule 4511(c).
Informasi yang dicatat dalam log mencakup parameter kueri, parameter jalur, dan parameter isi permintaan. Log mengecualikan bagian permintaan dan respons tertentu yang terkait dengan informasi sensitif. Misalnya, log mengecualikan:
- Kredensial, seperti
Authorization
,X-Goog-Signature
, atauupload-id
. - Informasi kunci enkripsi, seperti
x-goog-encryption-key
. - Data objek mentah.
Saat menggunakan batasan ini, perhatikan hal-hal berikut:
- Informasi permintaan dan respons yang mendetail tidak dijamin; dalam kasus yang jarang terjadi, log kosong mungkin ditampilkan.
- Mengaktifkan
detailedAuditLoggingMode
akan meningkatkan jumlah data yang disimpan di log audit, yang dapat memengaruhi biaya Cloud Logging untuk log Akses Data. Perlu diperhatikan bahwa diperlukan waktu hingga 10 menit untuk mengaktifkan atau menonaktifkan
detailedAuditLoggingMode
.Permintaan dan respons yang dicatat ke dalam log dicatat dalam format generik yang cocok dengan nama kolom JSON API.
Membatasi jenis autentikasi
Nama Batasan: constraints/storage.restrictAuthTypes
Jenis Batasan: list
Saat Anda menerapkan batasan restrictAuthTypes
, permintaan untuk mengakses resource Cloud Storage menggunakan jenis autentikasi yang dibatasi akan gagal, terlepas dari validitas permintaan tersebut. Batasan ini direkomendasikan saat Anda perlu memenuhi persyaratan peraturan atau meningkatkan keamanan data.
Jenis autentikasi berikut dapat dibatasi:
SERVICE_ACCOUNT_HMAC_SIGNED_REQUESTS
: Membatasi permintaan yang ditandatangani oleh kunci HMAC akun layanan.in:ALL_HMAC_SIGNED_REQUESTS
: Membatasi permintaan yang ditandatangani oleh kunci HMAC. Jika Anda perlu memenuhi persyaratan kedaulatan data, sebaiknya batasi semua permintaan yang ditandatangani HMAC.
Saat Anda mengaktifkan batasan ini, hal berikut akan terjadi:
Cloud Storage membatasi akses untuk permintaan yang diautentikasi dengan jenis autentikasi yang dibatasi. Permintaan gagal dengan error
403 Forbidden
.Entitas yang sebelumnya diberi otorisasi untuk melakukan permintaan akan menerima pesan error yang menjelaskan bahwa jenis autentikasi dinonaktifkan.
Jika kunci HMAC dibatasi:
Kunci HMAC dari jenis yang dibatasi tidak dapat lagi dibuat atau diaktifkan di resource tempat batasan diterapkan. Permintaan untuk membuat atau mengaktifkan kunci HMAC akan gagal dengan error
403 Forbidden
.Kunci HMAC yang sudah ada tetap ada, tetapi tidak dapat digunakan lagi. Token dapat dinonaktifkan atau dihapus, tetapi tidak dapat diaktifkan kembali.
Saat menggunakan batasan restrictAuthTypes
, perhatikan resource yang ada
yang bergantung pada autentikasi HMAC. Misalnya, jika Anda bermigrasi dari Amazon Simple Storage Service (Amazon S3),
aplikasi Anda kemungkinan menggunakan kunci HMAC untuk mengautentikasi permintaan ke
Cloud Storage. Anda dapat menggunakan metrik Cloud Monitoring storage.googleapis.com/authn/authentication_count
untuk melacak berapa kali kunci HMAC digunakan untuk mengautentikasi permintaan.
Membatasi permintaan HTTP yang tidak dienkripsi
Nama Batasan: constraints/storage.secureHttpTransport
Jenis Batasan: boolean
Saat Anda menerapkan batasan secureHttpTransport
, semua akses HTTP yang tidak dienkripsi ke resource Cloud Storage akan ditolak.
- Secara default, Cloud Storage XML API memungkinkan akses HTTP yang tidak dienkripsi.
Batasan tambahan
Batasan kebijakan organisasi berikut berlaku secara lebih umum di seluruh Google Cloud, tetapi sering diterapkan ke layanan Cloud Storage:
constraints/gcp.restrictNonCmekServices
: Mewajibkan objek baru dan yang ditulis ulang untuk dienkripsi menggunakan kunci enkripsi yang dikelola pelanggan, dan memerlukan bucket baru untuk menetapkan kunci Cloud KMS sebagai kunci enkripsi default.constraints/gcp.restrictCmekCryptoKeyProjects
: Menolak permintaan ke Cloud Storage jika permintaan menyertakan kunci enkripsi yang dikelola pelanggan dan kunci tersebut bukan milik project yang ditentukan oleh batasan. Demikian pula, tolak permintaan yang membuat atau menulis ulang objek jika objek akan dienkripsi oleh kunci enkripsi default bucket dan kunci tersebut bukan milik project yang ditentukan oleh batasan.constraints/gcp.restrictTLSVersion
: Mencegah akses ke Cloud Storage dengan permintaan yang dibuat menggunakan Transport Layer Security (TLS) 1.0 atau 1.1.
Mengizinkan atau menolak batasan kebijakan organisasi secara bersyarat
Tag memberikan cara untuk mengizinkan atau menolak kebijakan organisasi secara bersyarat berdasarkan apakah bucket Cloud Storage memiliki tag tertentu atau tidak. Lihat menetapkan kebijakan organisasi dengan tag untuk mendapatkan petunjuk selengkapnya.
Langkah selanjutnya
- Pelajari hierarki resource yang berlaku untuk kebijakan organisasi.
- Lihat Membuat dan mengelola kebijakan organisasi untuk mendapatkan petunjuk tentang cara menangani batasan dan kebijakan organisasi di konsol Google Cloud.
- Baca artikel Menggunakan batasan untuk mengetahui petunjuk tentang cara menangani batasan dan kebijakan organisasi di gcloud CLI.
- Pelajari batasan kustom untuk Cloud Storage.
- Lihat dokumentasi referensi Resource Manager API untuk mengetahui metode API
yang relevan, seperti
projects.setOrgPolicy
.