Anda sedang melihat dokumentasi Apigee Edge.
Buka
Dokumentasi Apigee X. info
Versi: 1.3.0
Gunakan ekstensi ini untuk menyamarkan data sensitif dari konten dan gambar. Misalnya, Anda dapat menyamarkan nomor kartu kredit, nama, dan nomor jaminan sosial.
Prasyarat
Konten ini menyediakan referensi untuk mengonfigurasi dan menggunakan ekstensi ini. Sebelum menggunakan ekstensi dari proxy API menggunakan kebijakan Extensionscallout, Anda harus:
Aktifkan Google Cloud DLP API untuk project Anda.
Berikan izin untuk tingkat akses yang diinginkan untuk ekstensi.
Gunakan konten file JSON utama yang dihasilkan saat menambahkan dan mengonfigurasi ekstensi menggunakan referensi konfigurasi.
Tentang Cloud Data Loss Prevention (DLP)
Cloud Data Loss Prevention (DLP) adalah API untuk memeriksa teks, gambar, dan data lainnya guna mengidentifikasi dan mengelola data sensitif.
Untuk mengetahui informasi selengkapnya, lihat Ringkasan DLP. Untuk referensi tentang API yang diekspos oleh ekstensi ini, lihat Cloud Data Loss Prevention (DLP) API.
Contoh
Contoh berikut menggambarkan cara mengonfigurasi dukungan untuk tindakan ekstensi Cloud DLP menggunakan kebijakan Extensioncallout.
Untuk mempermudah upaya kode contoh ini, contoh ini menggunakan kebijakan MenetapkanMessage untuk menetapkan nilai variabel alur dan mengambil nilai respons ekstensi untuk ditampilkan di alat Trace.
Topeng dengan bintang
Contoh ini menggunakan tindakan deidentifyWithMask
untuk menyamarkan jenis teks tertentu dengan karakter yang ditentukan dalam kebijakan -- di sini, karakter *
.
Kebijakan TetapkanMessage berikut menetapkan variabel request.content
untuk tujuan ilustrasi. Biasanya, Anda akan mengambil konten permintaan dari permintaan klien.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Set-Variable">
<DisplayName>Set Variable</DisplayName>
<AssignTo type="response" createNew="false"/>
<AssignVariable>
<Name>request.content</Name>
<Value>Visit my site at https://example.com. Or contact me at gladys@example.com.</Value>
</AssignVariable>
</AssignMessage>
Kebijakan Extensioncallout berikut mengambil nilai variabel request.content dan meneruskannya ke ekstensi Cloud DLP (di sini, disebut example-dlp
). Ekstensi tersebut telah dikonfigurasi untuk menyamarkan nilai berdasarkan infoTypes URL
dan EMAIL_ADDRESS
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Data-Loss-Extension-Callout">
<DisplayName>Data Loss Prevention Extension Callout</DisplayName>
<Connector>example-dlp</Connector>
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "{request.content}",
"mask" : "*"
}]]></Input>
<Output>masked.output</Output>
</ConnectorCallout>
Kebijakan MenetapkanMessage berikut mengambil output ekstensi untuk ditampilkan di alat Trace.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-DLP-Output">
<DisplayName>Get DLP Output</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{masked.output}</Payload>
</Set>
</AssignMessage>
Berikut adalah contoh output dari kode ini.
{"text":"Visit my site at ******************* Or contact me at *****************."}
Topeng dengan nama
Contoh ini menggunakan tindakan deidentifyWithType
untuk menyamarkan jenis teks yang ditentukan dengan nama infotype itu sendiri. Misalnya, alamat email ini akan diganti dengan gladys@example.com
dengan EMAIL_ADDRESS
.
Kebijakan TetapkanMessage berikut menetapkan variabel request.content
untuk tujuan ilustrasi. Biasanya, Anda akan mengambil konten permintaan dari permintaan klien.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Set-Variable">
<DisplayName>Set Variable</DisplayName>
<AssignTo type="response" createNew="false"/>
<AssignVariable>
<Name>request.content</Name>
<Value>Visit my site at https://example.com. Or contact me at gladys@example.com.</Value>
</AssignVariable>
</AssignMessage>
Kebijakan Extensioncallout berikut mengambil nilai variabel request.content
dan meneruskannya ke ekstensi Cloud DLP (di sini, disebut example-dlp
). Ekstensi tersebut telah dikonfigurasi untuk menyamarkan nilai berdasarkan infoTypes URL
dan EMAIL_ADDRESS
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Data-Loss-Extension-Callout">
<DisplayName>Data Loss Prevention Extension Callout</DisplayName>
<Connector>example-dlp</Connector>
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "{request.content}"
}]]></Input>
<Output>masked.output</Output>
</ConnectorCallout>
Kebijakan MenetapkanMessage berikut mengambil output ekstensi untuk ditampilkan di alat Trace.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-DLP-Output">
<DisplayName>Get DLP Output</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{masked.output}</Payload>
</Set>
</AssignMessage>
Berikut adalah contoh output dari kode ini.
{"text":"Visit my site at [URL] Or contact me at [EMAIL_ADDRESS]."}
Tindakan
deidentifyWithMask
Lakukan de-identifikasi data sensitif dari text
dan samarkan data dengan karakter mask
. Tindakan ini akan menyamarkan bagian-bagian text
yang ditentukan oleh properti infoTypes
dalam konfigurasi ekstensi.
Menyamarkan data sensitif mengganti karakter dengan simbol, seperti tanda bintang (*) atau tanda pagar (#). Jenis data sensitif dapat dikonfigurasi dalam konfigurasi ekstensi.
Sintaksis
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify",
"mask" : "masking-character"
}]]></Input>
Contoh
Pada contoh berikut, input untuk menyamarkan adalah alamat email yang disimpan dalam variabel alur input.email.address
. Untuk mendukung contoh khusus ini, ekstensi ini harus dikonfigurasi untuk mendukung infoType EMAIL_ADDRESS. Untuk mengetahui daftar infoType, lihat Referensi Pendeteksi InfoType.
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "{input.email.address}",
"mask" : "*"
}]]></Input>
<Output>masked.output</Output>
Output untuk contoh ini adalah sebagai berikut:
{"text":"*****************"}
Parameter permintaan
Parameter | Deskripsi | Jenis | Default | Wajib |
---|---|---|---|---|
teks | Teks yang akan dide-identifikasi. | String | Tidak ada. | Ya. |
masker | Karakter yang akan digunakan untuk menyamarkan data sensitif. | String | Tidak ada. | Ya. |
Respons
Teks input dengan nilai infoType yang ditentukan diganti dengan karakter yang ditentukan. Misalnya,
{"text":"*********"}
deidentifyWithTemplate
Lakukan de-identifikasi data sensitif dalam konten teks menggunakan template yang mengonfigurasi teks apa yang akan dide-identifikasi dan cara menanganinya.
Template berguna untuk memisahkan konfigurasi seperti apa yang Anda periksa dan cara Anda melakukan de-identifikasi dari implementasi panggilan API Anda. Template menyediakan cara untuk menggunakan kembali konfigurasi dan memungkinkan konsistensi di seluruh pengguna dan set data.
Di template, Anda akan menentukan infoTypes yang mewakili konten yang akan dide-identifikasi. Untuk mengetahui daftar infoType, lihat Referensi detektor InfoType. Melakukan de-identifikasi menyamarkan bagian teks yang ditentukan oleh properti infoTypes
di template.
Sintaksis
<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify"
"templateName" : "path-to-template"
}]]></Input>
Contoh
Pada contoh berikut, input untuk melakukan de-identifikasi adalah isi permintaan yang dibawa oleh variabel flow request.content
.
<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
"text" : "{request.content}"
"templateName" : "projects/[PROJECT_ID]/deidentifyTemplates/1231258663242"
}]]></Input>
Output untuk contoh ini adalah konten permintaan yang telah dide-identifikasi.
Parameter permintaan
Parameter | Deskripsi | Jenis | Default | Wajib |
---|---|---|---|---|
teks | Teks yang akan dide-identifikasi. Di sinilah proses de-identifikasi beroperasi. | Objek | Tidak ada. | Ya. |
templateName | Template yang akan digunakan. Jalur ini akan menjadi jalur ke template dalam bentuk berikut: projects or organizations/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID . Saat Anda membuat template dengan Google API, gunakan nilai properti name respons sebagai templateName . |
String | Tidak ada. | Ya. |
Respons
Teks input dengan nilai infoType yang ditentukan diganti dengan nama infoType.
deidentifyWithType
Lakukan de-identifikasi data sensitif dalam konten teks, dengan mengganti setiap nilai yang cocok dengan nama infoType. Untuk mengetahui daftar infoType, lihat Referensi detektor InfoType. Tindakan ini akan menyamarkan bagian-bagian text
yang ditentukan oleh properti infoTypes
dalam konfigurasi ekstensi.
Pada contoh berikut, nomor telepon dikenali oleh layanan, lalu diganti dengan nama infoType itu sendiri.
Teks masukan:
John Smith, 123 Main St, Seattle, WA 98122, 206-555-0123.
Teks hasil:
John Smith, 123 Main St, Seattle, WA 98122, PHONE_NUMBER.
Sintaksis
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify"
}]]></Input>
Contoh
Pada contoh berikut, input untuk menyamarkan adalah alamat email yang disimpan dalam variabel alur input.email.address
. Untuk mendukung contoh khusus ini, ekstensi ini harus dikonfigurasi untuk mendukung infoType EMAIL_ADDRESS. Untuk mengetahui daftar infoType, lihat Referensi Pendeteksi InfoType.
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "{input.email.address}"
}]]></Input>
Output untuk contoh ini adalah sebagai berikut:
{"text":"EMAIL_ADDRESS"}
Parameter permintaan
Parameter | Deskripsi | Jenis | Default | Wajib |
---|---|---|---|---|
teks | Teks yang akan dide-identifikasi. | String | Tidak ada. | Ya. |
Respons
Teks input dengan nilai infoType yang ditentukan diganti dengan nama infoType. Misalnya,
{"text":"EMAIL_ADDRESS"}
redactImage
Menyamarkan teks yang termasuk dalam salah satu kategori infoType. Konten yang disamarkan akan terdeteksi dan disamarkan dengan persegi panjang buram. Tindakan ini akan menyamarkan bagian-bagian image_data
yang ditentukan oleh properti infoTypes
dalam konfigurasi ekstensi.
Untuk mengetahui daftar infoType, lihat Referensi detektor InfoType.
Parameter permintaan
<Action>redactImage</Action>
<Input><![CDATA[{
"image_data" : "base64-encoded-image-to-analyze",
"image_type" : "type-of-image"
}]]></Input>
Parameter | Deskripsi | Jenis | Default | Wajib |
---|---|---|---|---|
image_data | Data gambar yang dienkode dalam base64. | String | Tidak ada. | Ya. |
image_type | Konstanta jenis gambar. Nilai yang tersedia adalah IMAGE_JPEG, IMAGE_BMP, IMAGE_PNG, IMAGE_SVG. | String | Tidak ada. | Ya. |
Respons
Gambar yang teksnya disamarkan.
Referensi Konfigurasi
Gunakan hal berikut saat Anda mengonfigurasi dan men-deploy ekstensi ini untuk digunakan di proxy API. Untuk mengetahui langkah-langkah dalam mengonfigurasi ekstensi menggunakan konsol Apigee, lihat Menambahkan dan mengonfigurasi ekstensi.
Properti ekstensi umum
Properti berikut ada untuk setiap ekstensi.
Properti | Deskripsi | Default | Wajib |
---|---|---|---|
name |
Nama yang Anda berikan pada konfigurasi ekstensi ini. | Tidak ada | Ya |
packageName |
Nama paket ekstensi seperti yang diberikan oleh Apigee Edge. | Tidak ada | Ya |
version |
Nomor versi untuk paket ekstensi tempat Anda mengonfigurasi ekstensi. | Tidak ada | Ya |
configuration |
Nilai konfigurasi khusus untuk ekstensi yang Anda tambahkan. Lihat Properti untuk paket ekstensi ini | Tidak ada | Ya |
Properti untuk paket ekstensi ini
Tentukan nilai untuk properti konfigurasi berikut khusus untuk ekstensi ini.
Properti | Deskripsi | Default | Wajib |
---|---|---|---|
projectId | Project ID GCP dengan Cloud Data Loss Prevention API yang diaktifkan. | Tidak ada. | Ya. |
infoTypes | Jenis info dari data sensitif. Jika dihilangkan, layanan akan mendeteksi semua jenis bawaan. Untuk mengetahui daftar infoType yang didukung oleh layanan DLP Google Cloud, lihat Referensi Pendeteksi InfoType. | Tidak ada. | Tidak. |
credentials | Saat dimasukkan di konsol Apigee Edge, ini adalah isi file kunci akun layanan Anda. Saat dikirim melalui Management API, ini adalah nilai berenkode base64 yang dihasilkan dari file kunci akun layanan. | Tidak ada. | Ya. |