Halaman ini menjelaskan cara mendaftarkan data pengguna dengan Consent Management API.
Elemen data didaftarkan dengan Consent Management API dan terhubung ke izin menggunakan pemetaan data pengguna. Data pengguna tidak pernah disimpan di Consent Management API.
Pemetaan data pengguna, yang direpresentasikan sebagai resource UserDataMappings
, mencakup elemen berikut:
- ID pengguna yang mengidentifikasi pengguna. ID ini cocok dengan ID yang diberikan oleh aplikasi Consent Management API saat mendaftarkan izin.
- ID data yang mengidentifikasi data pengguna yang disimpan di tempat lain, seperti di Google Cloud atau secara lokal. ID data dapat berupa ID buram, URL, atau ID lainnya.
- Atribut resource, yang menjelaskan karakteristik data pengguna menggunakan nilai atribut resource yang dikonfigurasi untuk penyimpanan persetujuan menggunakan definisi atribut. Misalnya, data dapat menyertakan
attribute_definition_id
data_identifiable
dengan nilaide-identified
.
Diagram berikut menunjukkan aliran data untuk membuat pemetaan data pengguna:
Mendaftarkan pemetaan data pengguna
Untuk membuat pemetaan data pengguna, gunakan
metode
projects.locations.datasets.consentStores.userDataMappings.create
. Buat permintaan POST
dan tentukan informasi berikut dalam
permintaan:
- Nama penyimpanan persetujuan orang tua
userID
unik dan buram yang mewakili pengguna yang terkait dengan elemen data- ID untuk resource data pengguna, seperti jalur REST ke resource unik
- Kumpulan atribut
RESOURCE
yang mendeskripsikan elemen data - Token akses
curl
Contoh berikut menunjukkan permintaan POST
menggunakan curl
:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/consent+json; charset=utf-8" \ --data "{ 'user_id': 'USER_ID', 'data_id' : 'DATA_ID', 'resource_attributes': [{ 'attribute_definition_id': 'data_identifiable', 'values': ['de-identified'] }] }" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/consentStores/CONSENT_STORE_ID/userDataMappings"
Jika permintaan berhasil, server akan menampilkan respons yang mirip dengan contoh berikut dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/consentStores/CONSENT_STORE_ID/userDataMappings/USER_DATA_MAPPING_ID", "dataId": "DATA_ID", "userId": "USER_ID", "resourceAttributes": [ { "attributeDefinitionId": "data_identifiable", "values": [ "de-identified" ] } ] }
PowerShell
Contoh berikut menunjukkan permintaan POST
menggunakan Windows PowerShell:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/consent+json; charset=utf-8" ` -Body "{ 'user_id': 'USER_ID', 'data_id' : 'DATA_ID', 'resource_attributes': [{ 'attribute_definition_id': 'data_identifiable', 'values': ['de-identified'] }] }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/consentStores/CONSENT_STORE_ID/userDataMappings" | Select-Object -Expand Content
Jika permintaan berhasil, server akan menampilkan respons yang mirip dengan contoh berikut dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/consentStores/CONSENT_STORE_ID/userDataMappings/USER_DATA_MAPPING_ID", "dataId": "DATA_ID", "userId": "USER_ID", "resourceAttributes": [ { "attributeDefinitionId": "data_identifiable", "values": [ "de-identified" ] } ] }
Mengonfigurasi ID data
Kolom data_id
dari resource pemetaan data pengguna berisi
string yang ditentukan pelanggan yang menjelaskan data yang dirujuk oleh resource
pemetaan data pengguna. String apa pun diizinkan, seperti ID atau URI buram.
ID data dapat sedetail yang diperlukan oleh aplikasi Anda. Jika data yang Anda daftarkan dapat dijelaskan pada level tabel atau bucket, tentukan data_id
sebagai jalur REST ke resource tersebut.
Jika data yang Anda daftarkan memerlukan lebih banyak perincian,
Anda dapat menentukan baris atau sel tertentu. Jika aplikasi Anda menggunakan resource konseptual, seperti tindakan atau class data yang diizinkan, Anda harus
menentukan data_id
dengan konvensi yang mendukung kasus penggunaan tersebut.
Contoh data_id
yang menjelaskan data yang disimpan di berbagai layanan dan pada berbagai tingkat perincian mencakup, tetapi tidak terbatas pada, hal berikut:
Objek Google Cloud Storage
'data_id' : 'gs://BUCKET_NAME/OBJECT_NAME'
Objek Amazon S3
'data_id' : 'https://BUCKET_NAME.s3.REGION.amazonaws.com/OBJECT_NAME'
Tabel BigQuery
'data_id' : 'bigquery/v2/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID'
Baris BigQuery (tidak ada jalur REST untuk baris BigQuery, sehingga ID Anda sendiri diperlukan - salah satu pendekatan yang memungkinkan ada di bawah)
'data_id' : 'bigquery/v2/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID/myRows/ROW_ID'
Sel BigQuery (tidak ada jalur REST untuk sel BigQuery, sehingga ID Anda sendiri diperlukan - satu kemungkinan pendekatan ada di bawah)
'data_id' : 'bigquery/v2/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID/myRows/ROW_ID/myColumns/COLUMN_ID'
Resource FHIR
'data_id' : 'https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/Patient/PATIENT_ID'
Representasi konseptual
'data_id' : 'wearables/fitness/step_count/daily_sum'