Halaman ini menjelaskan Consent Management API dan cara menggunakannya untuk mengelola izin dan privasi pengguna.
Consent Management API adalah komponen dari arsitektur izin dan privasi Anda dan menyediakan pengelolaan izin dan privasi data pengguna yang skalabel dan aman. Consent Management API menyimpan informasi izin yang Anda terima dari pengguna, melacak data yang diizinkan untuk setiap kasus penggunaan, dan membantu aplikasi Anda menggunakan data hanya sesuai dengan petunjuk pengguna.
Alur informasi Consent Management API
Alur informasi izin dan privasi dalam Consent Management API adalah sebagai berikut:
- Aplikasi Anda menampilkan opsi privasi kepada pengguna, lalu membuat atau merevisi data izin dalam Consent Management API untuk mewakili keputusan pengguna tersebut.
- Saat aplikasi Anda menulis data ke berbagai penyimpanan datanya, aplikasi tersebut akan mendaftarkan lokasi dan karakteristik data tersebut dengan instance Consent Management API Anda.
- Saat aplikasi perlu menentukan apakah data diizinkan untuk kasus penggunaan tertentu, aplikasi akan membuat permintaan ke Consent Management API dengan data yang diminta dan penggunaan yang diusulkan.
- Consent Management API membandingkan data yang diminta dan penggunaan yang diusulkan dengan izin yang disimpan dan menampilkan respons positif jika ada izin yang valid. Respons negatif akan ditampilkan jika tidak ada izin yang valid.
Diagram berikut menunjukkan alur informasi Consent Management API:
Untuk informasi selengkapnya tentang cara data izin diatur dalam Consent Management API, lihat Model data Consent Management API.
Titik keputusan kebijakan
Consent Management API berfungsi sebagai titik keputusan kebijakan dalam izin dan arsitektur privasi Anda sebagai berikut:
- Menyimpan kebijakan izin yang diberikan oleh pengguna aplikasi Anda.
- Menerima kueri akses data yang dibuat oleh aplikasi klien yang diotorisasi.
- Mengevaluasi kueri akses berdasarkan kebijakan izin yang disimpan.
- Membuat penentuan akses untuk menerapkan kebijakan izin bagi aplikasi klien.
Penerapan kebijakan
Consent Management API mendukung penegakan kebijakan dalam arsitektur izin dan privasi Anda sebagai berikut:
- Memproses kueri penentuan akses yang dibuat oleh aplikasi atau titik penegakan kebijakan.
- Mengevaluasi apakah resource dapat diakses untuk tujuan tertentu.
- Menentukan semua resource yang dapat diakses untuk tujuan tertentu.
- Menautkan resource ke atribut dan kebijakan izin sehingga titik penerapan hanya perlu menentukan atribut permintaan dan nama resource opsional.
- Menampilkan penentuan akses menggunakan status izin saat ini, meskipun izin ditambahkan, diperbarui, atau dicabut.
Anda dapat menerapkan lebih dari satu pola penegakan kebijakan menggunakan Consent Management API dalam arsitektur izin dan privasi Anda. Daftar berikut menunjukkan contoh pola penerapan kebijakan:
- Penerapan oleh aplikasi tepercaya. Aplikasi yang telah memverifikasi identitas dan kualifikasi pengguna dapat meneruskan properti yang relevan ke Consent Management API. Hal ini memungkinkan pengguna mengirimkan atau memperbarui izin dan memungkinkan aplikasi, dengan kualifikasi terverifikasi, hanya mengakses informasi yang diizinkan untuk kasus penggunaannya.
- Penerapan oleh middleware pelanggan. Aplikasi yang memerlukan verifikasi identitas dan kualifikasi pengguna dapat menggunakan Consent Management API untuk menentukan apakah akses diizinkan untuk permintaan tertentu.
- Penerapan oleh server resource. Server resource dapat menggunakan identitas pengguna untuk mengambil kualifikasi dari aplikasi lain, jika diperlukan, lalu memanggil Consent Management API untuk menentukan akses sebelum memenuhi permintaan.
Representasi kebijakan
Kebijakan izin dalam Consent Management API terdiri dari kumpulan nilai atribut resource yang menentukan data yang diterapkan oleh kebijakan tersebut dan aturan otorisasi yang menentukan kondisi berlakunya kebijakan tersebut.
Jika beberapa nilai ditentukan untuk satu atribut resource, kebijakan tersebut akan diterapkan ke data yang cocok dengan salah satu nilai tersebut. Jika beberapa atribut resource muncul dalam kebijakan, setiap atribut resource tersebut harus cocok agar kebijakan dapat diterapkan.
Aturan otorisasi menggunakan variasi terbatas Common Expression Language (CEL) untuk mendeskripsikan hubungan antara nilai atribut permintaan yang mengizinkan akses ke data yang relevan secara fleksibel. Untuk mengetahui informasi selengkapnya tentang CEL, lihat Common Expression Language.
Referensi izin dapat berisi beberapa kebijakan izin yang dapat mewakili respons positif terhadap pertanyaan izin yang diberikan kepada pengguna. Kebijakan izin juga dapat digunakan untuk merepresentasikan seluruh formulir izin atau keputusan organisasi dan administratif.
Diagram berikut menunjukkan cara kebijakan direpresentasikan di Consent Management API:
Diagram ini menunjukkan cara membuat kebijakan izin sederhana menggunakan atribut resource dan permintaan. Kebijakan yang lebih kompleks dapat dibuat dengan menggabungkan dua kebijakan atau lebih.
Data izin
Consent Management API menyimpan jenis data izin berikut:
- Artefak izin: menyimpan dokumen yang diterima atau ditandatangani oleh pengguna. Data ini dapat berisi PDF atau gambar layar yang ditampilkan kepada pengguna selama proses izin. Cookie ini juga dapat digunakan untuk menyimpan tanda tangan, stempel waktu, dan informasi penting lainnya yang mendokumentasikan proses izin.
- Resource izin: menjelaskan izin yang diberikan oleh pengguna dalam hal atribut izin yang dikonfigurasi. Consent Management API mengevaluasi data ini untuk menentukan apakah data diizinkan untuk kasus penggunaan. Resource izin berisi izin yang diberikan dan status izin. Data ini juga dapat ditautkan ke artefak izin yang sesuai.
Untuk mengetahui informasi selengkapnya tentang data izin, lihat Membuat dan memperbarui izin pengguna.
Pengelolaan data
Consent Management API dapat mengelola data yang disimpan dalam skema Anda sendiri di Google Cloud, di lokal, atau dengan penyedia cloud lain selama data dapat dijelaskan menggunakan string. Consent Management API menggunakan pemetaan data pengguna untuk melacak data yang dikelola tanpa perlu menyimpan data tersebut dalam layanan itu sendiri.
Setiap pemetaan data pengguna berisi ID data, ID pengguna, dan kumpulan nilai atribut resource. ID data adalah string yang mengidentifikasi data secara unik yang diwakili oleh pemetaan data pengguna. ID pengguna adalah ID buram yang menautkan data tersebut ke pengguna. Nilai atribut resource menjelaskan karakteristik data menggunakan kosakata yang ditentukan oleh resource definisi atribut.
Berikut adalah lokasi penyimpanan umum untuk data yang dikelola izin:
- Penyimpanan FHIR
- BigQuery
- Cloud Storage
Untuk informasi selengkapnya tentang cara membuat pemetaan data pengguna, lihat Mendaftarkan data pengguna.
Penentuan akses
Permintaan penentuan akses dibuat oleh aplikasi yang perlu mengetahui apakah penggunaan yang diusulkan diizinkan untuk mengakses elemen data tertentu, semua elemen data yang terkait dengan pengguna, atau seluruh penyimpanan data. Consent Management API menentukan apakah permintaan diizinkan dengan mengevaluasi apakah ada izin valid yang memberikan izin untuk data yang ditentukan dan penggunaan yang diusulkan atau tidak. Consent Management API melakukan evaluasi ini sebagai berikut:
- Consent Management API menerima permintaan penentuan akses dengan nilai atribut permintaan untuk penggunaan yang diusulkan dan resource target atau rentang resource target yang dijelaskan oleh ID pengguna atau nilai atribut resource.
- Jika rentang resource target ditentukan, Consent Management API akan menentukan resource yang cocok dengan rentang tersebut. Misalnya, jika Anda menentukan rentang nilai atribut resource, semua resource dalam rentang ini akan digunakan dalam permintaan penentuan akses.
- Izin untuk semua resource yang cocok akan diidentifikasi.
- Penggunaan yang diusulkan dievaluasi berdasarkan aturan otorisasi izin yang relevan.
- Jika ada aturan otorisasi yang mengizinkan kombinasi nilai atribut permintaan ini, penentuan akses positif akan ditampilkan untuk setiap resource yang dievaluasi.
Secara default, penentuan akses hanya dilakukan pada izin yang aktif. Izin dalam status draf dapat disertakan dalam penentuan akses dengan menentukannya secara langsung dalam permintaan penentuan akses. Izin yang sudah habis masa berlakunya, dicabut, atau dalam status ditolak akan diabaikan di semua permintaan penentuan akses.
Untuk mengetahui informasi selengkapnya tentang cara membuat permintaan penetapan akses, lihat Membuat penetapan akses.