Membatasi akses dengan kontrol akses tingkat kolom
Halaman ini menjelaskan cara menggunakan kontrol akses tingkat kolom BigQuery untuk membatasi akses ke data BigQuery di tingkat kolom. Untuk informasi umum tentang kontrol akses tingkat kolom, lihat Pengantar kontrol akses tingkat kolom BigQuery.
Petunjuk di halaman ini menggunakan BigQuery dan Data Catalog.
Anda harus memperbarui skema tabel untuk menetapkan tag kebijakan di kolom. Anda dapat menggunakan Konsol Google Cloud, alat command line bq, dan BigQuery API untuk menetapkan tag kebijakan di kolom. Selain itu, Anda dapat membuat tabel, menentukan skema, dan menentukan tag kebijakan dalam satu operasi menggunakan teknik berikut:
- Perintah
bq mk
danbq load
alat command line bq. - Metode API
tables.insert
. - Halaman Create table di Konsol Google Cloud. Jika menggunakan Konsol Google Cloud, Anda harus memilih Edit as text saat menambahkan atau mengedit skema.
Untuk meningkatkan kontrol akses tingkat kolom, Anda dapat secara opsional menggunakan penyamaran data dinamis. Penyamaran data memungkinkan Anda menyamarkan data sensitif dengan mengganti konten null, default, atau yang di-hash sebagai pengganti nilai aktual kolom.
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
-
Aktifkan API Data Catalog and BigQuery Data Policy.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
-
Aktifkan API Data Catalog and BigQuery Data Policy.
- BigQuery secara otomatis diaktifkan di project baru, tetapi Anda mungkin harus mengaktifkannya di project yang sudah ada.
Aktifkan API BigQuery.
Peran dan izin
Ada beberapa peran yang terkait dengan tag kebijakan untuk pengguna dan akun layanan.
- Pengguna atau akun layanan yang mengelola tag kebijakan harus memiliki peran Data Catalog Policy Tag Admin. Peran Policy Tag Admin dapat mengelola taksonomi dan tag kebijakan, dan dapat memberikan atau menghapus peran IAM yang terkait dengan tag kebijakan.
Pengguna atau akun layanan yang menerapkan kontrol akses untuk kontrol akses tingkat kolom harus memiliki peran BigQuery Admin atau peran BigQuery Data Owner. Peran BigQuery dapat mengelola kebijakan data yang digunakan untuk menerapkan kontrol akses pada taksonomi.
Pengguna atau akun layanan yang membuat kueri data yang dilindungi oleh kontrol akses tingkat kolom harus memiliki peran Data Catalog Fine-Grained Reader untuk mengakses data tersebut.
Untuk informasi selengkapnya tentang semua peran terkait tag kebijakan, lihat Peran yang digunakan dengan kontrol akses tingkat kolom.
Peran Data Catalog Policy Tag Admin
Peran Data Catalog Policy Tag Admin dapat membuat dan mengelola tag kebijakan data.
Untuk memberikan peran Policy Tag Admin, Anda harus memiliki izin resourcemanager.projects.setIamPolicy
di project yang ingin Anda berikan peran tersebut. Jika Anda tidak memiliki izin resourcemanager.projects.setIamPolicy
, minta Project Owner untuk memberi Anda izin atau melakukan langkah-langkah berikut untuk Anda.
Di Konsol Google Cloud, buka halaman IAM.
Jika alamat email pengguna yang akan diberi peran ada dalam daftar, pilih alamat email, lalu klik Edit (ikon pensil). Kemudian, klik Add another role.
Jika alamat email pengguna tidak ada dalam daftar, klik
Add, lalu masukkan alamat email di kotak New principals.Klik menu drop-down Select a role.
Klik Data Catalog, lalu klik Policy Tag Admin.
Klik Save.
Peran BigQuery Admin dan Data Owner
Peran BigQuery Admin dan Data Owner dapat mengelola kebijakan data.
Untuk memberikan salah satu peran ini, Anda harus memiliki izin resourcemanager.projects.setIamPolicy
pada project yang ingin Anda berikan peran tersebut. Jika Anda tidak memiliki izin resourcemanager.projects.setIamPolicy
, minta Project Owner untuk memberi Anda izin atau melakukan langkah-langkah berikut untuk Anda.
Di Konsol Google Cloud, buka halaman IAM.
Jika alamat email pengguna yang akan diberi peran ada dalam daftar, pilih alamat email, lalu klik Edit (ikon pensil). Kemudian, klik Add another role.
Jika alamat email pengguna tidak ada dalam daftar, klik
Add, lalu masukkan alamat email di kotak New principals.Klik menu drop-down Select a role.
Klik BigQuery, lalu klik Admin atau Data Owner.
Klik Simpan.
Peran Data Catalog Fine-Grained Reader
Pengguna yang memerlukan akses ke data yang dilindungi dengan kontrol akses tingkat kolom memerlukan peran Data Catalog Fine-Grained Reader. Peran ini ditetapkan ke akun utama sebagai bagian dari konfigurasi tag kebijakan.
Untuk memberikan peran Fine-Grained Reader kepada pengguna di tag kebijakan, Anda harus memiliki izin datacatalog.taxonomies.setIamPolicy
pada project yang berisi taksonomi tag kebijakan tersebut. Jika Anda tidak memiliki izin datacatalog.taxonomies.setIamPolicy
, minta Project Owner untuk memberi Anda izin atau melakukan tindakan untuk Anda.
Untuk petunjuk baca bagian Menetapkan izin pada tag kebijakan.
Menyiapkan kontrol akses tingkat kolom
Siapkan kontrol akses tingkat kolom dengan menyelesaikan tugas-tugas berikut:
- Buat taksonomi tag kebijakan.
- Kaitkan akun utama dengan tag kebijakan dan berikan peran Fine-Grained Reader Data Catalog kepada akun utama.
- Kaitkan tag kebijakan dengan kolom tabel BigQuery.
- Terapkan kontrol akses pada taksonomi yang berisi tag kebijakan.
Membuat taksonomi
Pengguna atau akun layanan yang membuat taksonomi harus diberi peran Data Catalog Policy Tag Admin.
Konsol
- Buka halaman Taksonomi tag kebijakan di konsol Google Cloud.
- Klik Buat taksonomi.
Di halaman Taksonomi baru:
- Untuk Nama taksonomi, masukkan nama taksonomi yang ingin Anda buat.
- Untuk Deskripsi, masukkan deskripsi.
- Jika diperlukan, ubah project yang tercantum di bagian Project.
- Jika perlu, ubah lokasi yang tercantum di bagian Lokasi.
- Di bagian Tag Kebijakan, masukkan nama dan deskripsi tag kebijakan.
- Untuk menambahkan tag kebijakan turunan untuk tag kebijakan, klik Tambahkan subtag.
- Untuk menambahkan tag kebijakan baru di tingkat yang sama dengan tag kebijakan lainnya, klik + Tambahkan tag kebijakan.
- Terus tambahkan tag kebijakan dan tag kebijakan turunan sesuai kebutuhan untuk taksonomi Anda.
- Setelah selesai membuat tag kebijakan untuk hierarki Anda, klik Buat.
API
Untuk menggunakan taksonomi yang sudah ada, panggil
taxonomies.import
sebagai pengganti dua langkah pertama dari prosedur berikut.
- Panggil
taxonomies.create
untuk membuat taksonomi. - Panggil
taxonomies.policytag.create
untuk membuat tag kebijakan.
Menetapkan izin pada tag kebijakan
Pengguna atau akun layanan yang membuat taksonomi harus diberi peran Data Catalog Policy Tag Admin.
Konsol
Buka halaman Taksonomi tag kebijakan di konsol Google Cloud.
Klik nama taksonomi yang berisi tag kebijakan yang relevan.
Pilih satu atau beberapa tag kebijakan.
Jika Info panel disembunyikan, klik Show info panel.
Di Info panel, Anda dapat melihat peran dan akun utama untuk tag kebijakan yang dipilih. Tambahkan peran Policy Tags Admin ke akun yang membuat dan mengelola tag kebijakan. Tambahkan peran Fine-Grained Reader ke akun yang dimaksudkan untuk memiliki akses ke data yang dilindungi oleh kontrol akses tingkat kolom. Anda juga menggunakan panel ini untuk menghapus peran dari akun atau mengubah izin lainnya.
Klik Simpan.
API
Panggil taxonomies.policytag.setIamPolicy
untuk memberikan akses ke tag kebijakan dengan menetapkan akun utama ke peran yang sesuai.
Menetapkan tag kebijakan di kolom
Pengguna atau akun layanan yang menetapkan tag kebijakan memerlukan izin datacatalog.taxonomies.get
dan bigquery.tables.setCategory
.
datacatalog.taxonomies.get
disertakan dalam peran
Data Catalog Policy Tags Admin dan Project Viewer.
bigquery.tables.setCategory
disertakan dalam
peran BigQuery Admin (roles/bigquery.admin
) dan
BigQuery Data Owner (roles/bigquery.dataOwner
).
Konsol
Tetapkan tag kebijakan dengan mengubah skema menggunakan konsol Google Cloud.
Buka halaman BigQuery di konsol Google Cloud.
Di BigQuery Explorer, temukan dan pilih tabel yang ingin Anda perbarui. Skema tabel untuk tabel tersebut akan terbuka.
Klik Edit Skema.
Di layar Skema saat ini, pilih kolom target, lalu klik Tambahkan tag kebijakan.
Di layar Tambahkan tag kebijakan, temukan dan pilih tag kebijakan yang ingin Anda terapkan ke kolom.
Klik Select. Layar Anda akan terlihat seperti berikut:
Klik Simpan.
bq
Menulis skema ke file lokal.
bq show --schema --format=prettyjson \ project-id:dataset.table > schema.json
dengan:
- project-id adalah project ID Anda.
- dataset adalah nama set data yang berisi tabel yang Anda perbarui.
- table adalah nama tabel yang Anda perbarui.
Mengubah schema.json untuk menetapkan tag kebijakan pada kolom. Untuk nilai kolom
names
daripolicyTags
, gunakan nama resource tag kebijakan.[ ... { "name": "ssn", "type": "STRING", "mode": "REQUIRED", "policyTags": { "names": ["projects/project-id/locations/location/taxonomies/taxonomy-id/policyTags/policytag-id"] } }, ... ]
Perbarui skema.
bq update \ project-id:dataset.table schema.json
API
Untuk tabel yang sudah ada, panggil tables.patch
, atau untuk tabel baru, panggil
tables.insert
. Gunakan
properti schema
objek Table
yang Anda teruskan
untuk menetapkan tag kebijakan dalam definisi skema Anda. Lihat skema contoh command line
untuk melihat cara menetapkan tag kebijakan.
Saat menangani tabel yang sudah ada, metode tables.patch
lebih disarankan, karena metode tables.update
menggantikan seluruh resource tabel.
Cara lain untuk menetapkan tag kebijakan di kolom
Anda juga dapat menetapkan tag kebijakan saat:
- Gunakan
bq mk
untuk membuat tabel. Teruskan skema yang akan digunakan untuk pembuatan tabel. - Gunakan
bq load
untuk memuat data ke tabel. Teruskan skema untuk digunakan saat Anda memuat tabel.
Untuk informasi skema umum, lihat Menentukan skema.
Menerapkan kontrol akses
Gunakan petunjuk ini untuk mengaktifkan atau menonaktifkan penerapan kontrol akses.
Untuk menerapkan kontrol akses, kebijakan data harus dibuat. Hal ini dilakukan jika Anda menerapkan kontrol akses menggunakan Konsol Google Cloud. Jika ingin menerapkan kontrol akses menggunakan BigQuery Data Policy API, Anda harus membuat kebijakan data secara eksplisit.
Akun pengguna atau akun layanan yang menerapkan kontrol akses harus memiliki peran BigQuery Admin atau peran BigQuery Data Owner. Mereka juga harus memiliki peran Data Catalog Admin atau peran Data Catalog Viewer.
Konsol
Untuk menerapkan kontrol akses, ikuti langkah-langkah berikut:
Buka halaman Policy tag taxonomies di Konsol Google Cloud.
Klik taksonomi yang kontrol akses tingkat kolomnya ingin Anda terapkan.
Jika Enforce access control belum diaktifkan, klik Enforce access control untuk mengaktifkannya.
Untuk menghentikan penerapan kontrol akses jika aktif, klik Enforce access control untuk menonaktifkannya.
Jika memiliki kebijakan data yang terkait dengan salah satu tag kebijakan dalam taksonomi, Anda harus menghapus semua kebijakan data dalam taksonomi sebelum menghentikan penerapan kontrol akses. Jika menghapus kebijakan data menggunakan BigQuery Data Policy API, Anda harus menghapus semua kebijakan data dengan dataPolicyType
dari DATA_MASKING_POLICY
. Untuk informasi selengkapnya, lihat Menghapus kebijakan data.
API
Untuk menerapkan kontrol akses, panggil create
dan teruskan resource DataPolicy
di mana kolom dataPolicyType
ditetapkan ke COLUMN_LEVEL_SECURITY_POLICY
.
Untuk menghentikan penerapan kontrol akses jika aktif, hapus kebijakan data yang terkait dengan taksonomi. Anda dapat melakukannya dengan memanggil metode delete
untuk kebijakan data tersebut.
Jika memiliki kebijakan data yang terkait dengan salah satu tag kebijakan dalam taksonomi, Anda tidak dapat menghentikan penerapan kontrol akses tanpa terlebih dahulu menghapus semua kebijakan data dalam taksonomi. Untuk informasi selengkapnya, lihat Menghapus kebijakan data.
Menggunakan tag kebijakan
Gunakan bagian ini untuk mempelajari cara melihat, mengubah, dan menghapus tag kebijakan.
Melihat tag kebijakan
Untuk melihat tag kebijakan yang Anda buat untuk taksonomi:
Buka halaman Policy tag taxonomies di Konsol Google Cloud.
Klik taksonomi yang tag kebijakannya ingin Anda lihat. Halaman Taxonomies menampilkan tag kebijakan dalam taksonomi.
Melihat tag kebijakan dalam skema
Anda dapat melihat tag kebijakan yang diterapkan ke tabel saat memeriksa skema tabel. Anda dapat melihat skema menggunakan Konsol Google Cloud, alat command line bq, BigQuery API, dan library klien. Untuk detail tentang cara melihat skema, lihat Mendapatkan informasi tabel.
Melihat izin pada tag kebijakan
Buka halaman Policy tag taxonomies di Konsol Google Cloud.
Klik nama taksonomi yang berisi tag kebijakan yang relevan.
Pilih satu atau beberapa tag kebijakan.
Jika Info panel disembunyikan, klik Show info panel.
Di Info panel, Anda dapat melihat peran dan akun utama untuk tag kebijakan yang dipilih.
Memperbarui izin pada tag kebijakan
Pengguna atau akun layanan yang membuat taksonomi harus diberi peran Data Catalog Policy Tag Admin.
Konsol
Buka halaman Taksonomi tag kebijakan di konsol Google Cloud.
Klik nama taksonomi yang berisi tag kebijakan yang relevan.
Pilih satu atau beberapa tag kebijakan.
Jika Info panel disembunyikan, klik Show info panel.
Di Info panel, Anda dapat melihat peran dan akun utama untuk tag kebijakan yang dipilih. Tambahkan peran Policy Tags Admin ke akun yang membuat dan mengelola tag kebijakan. Tambahkan peran Fine-Grained Reader ke akun yang dimaksudkan untuk memiliki akses ke data yang dilindungi oleh kontrol akses tingkat kolom. Anda juga menggunakan panel ini untuk menghapus peran dari akun atau mengubah izin lainnya.
Klik Simpan.
API
Panggil taxonomies.policytag.setIamPolicy
untuk memberikan akses ke tag kebijakan dengan menetapkan akun utama ke peran yang sesuai.
Mengambil nama resource tag kebijakan
Anda memerlukan nama resource tag kebijakan saat menerapkan tag kebijakan ke kolom.
Untuk mengambil nama resource tag kebijakan:
Lihat tag kebijakan untuk taksonomi yang berisi tag kebijakan.
Temukan tag kebijakan yang nama resource-nya ingin Anda salin.
Klik ikon Copy policy tag resource name.
Menghapus tag kebijakan
Perbarui skema tabel untuk menghapus tag kebijakan dari kolom. Anda dapat menggunakan Konsol Google Cloud, alat command line bq, dan metode BigQuery API untuk menghapus tag kebijakan dari kolom.
Konsol
Di halaman Current schema, di bagian Policy tags, klik X.
bq
Ambil skema dan simpan ke file lokal.
bq show --schema --format=prettyjson \ project-id:dataset.table > schema.json
dengan:
- project-id adalah project ID Anda.
- dataset adalah nama set data yang berisi tabel yang Anda perbarui.
- table adalah nama tabel yang Anda perbarui.
Mengubah schema.json untuk menghapus tag kebijakan dari kolom.
[ ... { "name": "ssn", "type": "STRING", "mode": "REQUIRED", "policyTags": { "names": [] } }, ... ]
Perbarui skema.
bq update \ project-id:dataset.table schema.json
API
Panggil tables.patch
dan gunakan properti schema
untuk menghapus tag kebijakan dalam definisi skema Anda. Lihat skema contoh command line untuk mengetahui cara menghapus tag kebijakan.
Karena metode tables.update
menggantikan seluruh resource tabel, metode tables.patch
akan dipilih.
Menghapus tag kebijakan
Anda dapat menghapus satu atau beberapa tag kebijakan dalam taksonomi, atau Anda dapat menghapus taksonomi dan semua tag kebijakan yang ada di dalamnya. Menghapus tag kebijakan akan otomatis menghapus pengaitan antara tag kebijakan dan kolom tempat tag tersebut diterapkan.
Jika Anda menghapus tag kebijakan yang memiliki kebijakan data yang terkait, diperlukan waktu hingga 30 menit agar kebijakan data juga dihapus. Anda dapat menghapus kebijakan data secara langsung jika ingin segera dihapus.
Untuk menghapus satu atau beberapa tag kebijakan di taksonomi, ikuti langkah-langkah berikut:
- Buka halaman Policy tag taxonomies di Konsol Google Cloud.
- Klik nama taksonomi yang berisi tag yang akan dihapus.
- Klik Edit.
- Klik di samping tag kebijakan yang akan dihapus.
- Klik Simpan.
- Klik Confirm.
Untuk menghapus seluruh taksonomi, ikuti langkah-langkah berikut:
- Buka halaman Policy tag taxonomies di Konsol Google Cloud.
- Klik nama taksonomi yang berisi tag yang akan dihapus.
- Klik Delete Policy Tag Taxonomy.
- Ketik nama taksonomi, lalu klik Delete.
Membuat kueri data dengan kontrol akses tingkat kolom
Jika pengguna memiliki akses set data dan memiliki peran Data Catalog Fine-Grained Reader, data kolom akan tersedia bagi pengguna. Pengguna menjalankan kueri seperti biasa.
Jika pengguna memiliki akses set data tetapi tidak memiliki peran Data Catalog Fine-Grained Reader, data kolom tidak akan tersedia bagi pengguna. Jika pengguna tersebut
menjalankan SELECT *
, mereka akan menerima error yang mencantumkan kolom
yang tidak dapat diakses oleh pengguna. Untuk mengatasi error, Anda dapat melakukan:
Ubah kueri untuk mengecualikan kolom yang tidak dapat diakses pengguna. Misalnya, jika pengguna tidak memiliki akses ke kolom
ssn
, tetapi memiliki akses ke kolom yang tersisa, pengguna dapat menjalankan kueri berikut:SELECT * EXCEPT (ssn) FROM ...
Pada contoh sebelumnya, klausa
EXCEPT
mengecualikan kolomssn
.Minta Administrator Data Catalog untuk menambahkan pengguna sebagai Data Catalog Fine-Grained Reader ke class data yang relevan. Pesan error memberikan nama lengkap tag kebijakan yang akan diakses oleh pengguna.
FAQ
Apakah keamanan tingkat kolom BigQuery berfungsi untuk tabel virtual?
Ya. Tabel virtual berasal dari tabel pokok. Kontrol akses tingkat kolom yang sama pada tabel akan berlaku jika kolom yang dilindungi diakses melalui tabel virtual.
Ada dua jenis tabel virtual di BigQuery, tabel virtual logis dan tabel virtual yang diotorisasi. Kedua jenis tabel virtual berasal dari tabel sumber, dan keduanya konsisten dengan kontrol akses tingkat kolom tabel.
Apakah kontrol akses tingkat kolom berfungsi pada kolom STRUCT
atau RECORD
?
Ya. Anda hanya dapat menerapkan tag kebijakan ke kolom leaf, dan hanya kolom tersebut yang dilindungi.
Dapatkah saya menggunakan legacy SQL dan GoogleSQL?
Anda dapat menggunakan GoogleSQL untuk membuat kueri tabel yang dilindungi oleh kontrol akses tingkat kolom.
Kueri SQL lama akan ditolak jika ada tag kebijakan pada tabel target.
Apakah kueri dicatat di Cloud Logging?
Pemeriksaan tag kebijakan dicatat di Logging. Untuk informasi selengkapnya, lihat Logging audit untuk kontrol akses tingkat kolom.
Apakah penyalinan tabel dipengaruhi oleh kontrol akses tingkat kolom?
Ya. Anda tidak dapat menyalin kolom jika tidak memiliki akses ke kolom tersebut.
Operasi berikut memverifikasi izin tingkat kolom.
- Kueri
SELECT
dengan tabel tujuan - Tugas penyalinan tabel
- Tugas ekspor data (misalnya ke Cloud Storage)
Saat saya menyalin data ke tabel baru, apakah tag kebijakan akan diterapkan secara otomatis?
Pada umumnya, tidak. Jika Anda menyalin hasil kueri ke tabel baru, tabel baru tidak otomatis memiliki tag kebijakan yang ditetapkan. Jadi tabel baru tersebut tidak memiliki kontrol akses tingkat kolom. Hal yang sama berlaku jika Anda mengekspor data ke Cloud Storage.
Pengecualiannya adalah jika Anda menggunakan tugas penyalinan tabel. Karena tugas penyalinan tabel tidak menerapkan transformasi data apa pun, tag kebijakan secara otomatis disebarkan ke tabel target.
Apakah kontrol akses tingkat kolom kompatibel dengan Virtual Private Cloud?
Ya, kontrol akses tingkat kolom dan VPC kompatibel dan saling melengkapi.
VPC memanfaatkan IAM untuk mengontrol akses ke berbagai layanan, seperti BigQuery dan Cloud Storage. Kontrol akses tingkat kolom memberikan keamanan terperinci pada setiap kolom dalam BigQuery itu sendiri.
Guna menerapkan VPC untuk tag kebijakan dan kebijakan data untuk kontrol akses tingkat kolom dan data masking dinamis, Anda harus membatasi API berikut di perimeter:
Memecahkan masalah
Saya tidak dapat melihat peran Data Catalog
Jika tidak dapat melihat peran seperti Data Catalog Fine-Grained Reader, mungkin Anda belum mengaktifkan Data Catalog API dalam project Anda. Untuk mempelajari cara mengaktifkan Data Catalog API, lihat Sebelum memulai. Peran Data Catalog akan muncul beberapa menit setelah Anda mengaktifkan Data Catalog API.
Saya tidak dapat melihat halaman Taxonomies
Anda memerlukan izin tambahan untuk melihat halaman Taxonomies. Misalnya, peran Data Catalog Policy Tags Admin memiliki akses ke halaman Taxonomies.
Saya menerapkan tag kebijakan, tetapi sepertinya tidak berfungsi
Jika Anda masih menerima hasil kueri untuk akun yang seharusnya tidak memiliki akses, akun tersebut mungkin menerima hasil yang di-cache. Khususnya, jika sebelumnya berhasil menjalankan kueri, lalu menerapkan tag kebijakan, Anda bisa mendapatkan hasil dari cache hasil kueri. Secara default, hasil kueri disimpan ke cache selama 24 jam. Kueri akan langsung gagal jika Anda menonaktifkan cache hasil. Untuk detail selengkapnya tentang caching, lihat Dampak kontrol akses tingkat kolom.
Secara umum, update IAM memerlukan waktu sekitar 30 detik untuk diterapkan. Perubahan pada hierarki tag kebijakan dapat memerlukan waktu hingga 30 menit untuk diterapkan.