Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Sürüm: 2.0.2
İçerik ve resimlerdeki hassas verileri gizlemek için bu uzantıyı kullanın. Örneğin, kredi kartı numaralarını, adları ve sosyal güvenlik numaralarını karartabilirsiniz.
Ön koşullar
Bu içerik, uzantının yapılandırılması ve kullanılmasıyla ilgili referans bilgiler sağlar. ExtensionCallout politikası kullanılarak bir API proxy'sinden uzantıyı kullanmadan önce şunları yapmanız gerekir:
Projeniz için Google Cloud DLP API'yi etkinleştirin.
Uzantı için istediğiniz erişim düzeyine izin verin.
Hizmet hesabı için anahtar oluşturmak üzere Google Cloud Console'u kullanın.
Yapılandırma referansını kullanarak uzantıyı eklerken ve yapılandırırken sonuçtaki anahtar JSON dosyasının içeriğini kullanın.
Cloud Data Loss Prevention (DLP) hakkında
Cloud Data Loss Prevention (DLP), hassas verileri tanımlamak ve yönetmek için metinleri, görüntüleri ve diğer verileri incelemeye yönelik bir API'dir.
Daha fazla bilgi için Veri Kaybını Önleme'ye genel bakış başlıklı makaleyi inceleyin. Bu uzantının sunduğu API ile ilgili referans için Cloud Data Loss Prevention (DLP) API'ye bakın.
Örnekler
Aşağıdaki örneklerde, ExtensionCallout politikası kullanılarak Cloud DLP uzantısı işlemlerine yönelik desteğin nasıl yapılandırılacağı gösterilmektedir.
Bu örneklerde, akış değişkeni değerlerini ayarlamak ve izleme aracında görüntülemek üzere uzantı yanıtı değerlerini almak için AssignMessage politikası kullanılır. Böylece bu örnek kodu denemek kolaylaşır.
Yıldızlı maske
Bu örnekte, belirtilen metin türlerini politikada belirtilen bir karakterle (burada deidentifyWithMask karakteri) maskelemek için deidentifyWithMask işlemi kullanılmaktadır.*
Aşağıdaki AssignMessage politikası, açıklama amacıyla request.content değişkenini ayarlar. Normalde, istek içeriğini istemcinin isteğinden alırsınız.
<?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>
Aşağıdaki ExtensionCallout politikası, request.content değişken değerini alır ve bunu bir Cloud DLP uzantısına (burada example-dlp olarak adlandırılır) iletir. Bu uzantı, URL ve EMAIL_ADDRESS infoTypes'larına göre değerleri maskelemek üzere yapılandırılmıştır.
<?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>
Aşağıdaki AssignMessage politikası, izleme aracında gösterilmek üzere uzantının çıkışını alır.
<?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>
Aşağıda bu kodun çıkışına dair bir örnek verilmiştir.
{"text":"Visit my site at ******************* Or contact me at *****************."}
Ad içeren maske
Bu örnekte, belirtilen metin türlerini bilgi türü adıyla maskelemek için deidentifyWithType işlemi kullanılır. Örneğin, gladys@example.com e-posta adresini EMAIL_ADDRESS ile değiştirir.
Aşağıdaki AssignMessage politikası, açıklama amacıyla request.content değişkenini ayarlar. Normalde, istek içeriğini istemcinin isteğinden alırsınız.
<?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>
Aşağıdaki ExtensionCallout politikası, request.content değişken değerini alır ve bir Cloud DLP uzantısına (burada example-dlp olarak adlandırılır) iletir. Bu uzantı, URL ve EMAIL_ADDRESS infoTypes'a göre değerleri maskelemek üzere yapılandırılmıştır.
<?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>
Aşağıdaki AssignMessage politikası, izleme aracında gösterilmek üzere uzantının çıkışını alır.
<?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>
Aşağıda bu kodun çıkışına dair bir örnek verilmiştir.
{"text":"Visit my site at [URL] Or contact me at [EMAIL_ADDRESS]."}
İşlemler
deidentifyWithMask
text içindeki hassas verilerin kimliğini gizleyin ve verileri mask karakteriyle maskeleyin. Bu işlem, uzantı yapılandırmasında infoTypes özelliğiyle belirtilen text bölümlerini maskeler.
Hassas verileri maskeleme, karakterleri yıldız (*) veya diyez (#) gibi bir sembolle değiştirir. Hassas veri türleri, uzantı yapılandırmasında ayarlanabilir.
Söz dizimi
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify",
"mask" : "masking-character"
}]]></Input>
Örnek
Aşağıdaki örnekte, maskelenecek giriş, bir input.email.address akış değişkeninde depolanan e-posta adresidir. Bu örneği desteklemek için uzantının EMAIL_ADDRESS InfoType'ı destekleyecek şekilde yapılandırılması gerekir. InfoType'ların listesi için InfoType Algılayıcı Referansı başlıklı makaleyi inceleyin.
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "{input.email.address}",
"mask" : "*"
}]]></Input>
<Output>masked.output</Output>
Bu örnek için çıkış aşağıdaki gibi olur:
{"text":"*****************"}
İstek parametreleri
| Parametre | Açıklama | Tür | Varsayılan | Zorunlu |
|---|---|---|---|---|
| text (metin) | Kimliği kaldırılacak metin. | Dize | Yok. | Evet. |
| maske | Hassas verileri maskelemek için kullanılacak karakter. | Dize | Yok. | Evet. |
Yanıt
Belirtilen infoType değerlerinin, belirtilen karakterle değiştirildiği giriş metni. Örneğin,
{"text":"*********"}
deidentifyWithTemplate
Hangi metnin kimliğinin gizleneceğini ve nasıl işleneceğini yapılandıran bir şablon kullanarak metin içeriğindeki hassas verilerin kimliğini gizleme
Şablonlar, neyi incelediğiniz ve kimliğini nasıl kaldırdığınız gibi yapılandırmaları API çağrılarınızın uygulanmasından ayırmak için kullanışlıdır. Şablonlar, yapılandırmayı yeniden kullanmanın ve kullanıcılar ile veri kümeleri arasında tutarlılık sağlamanın bir yolunu sunar.
Şablonunuzda, kimliği tanımlanamaz hale getirilecek içeriği temsil eden infoTypes'ı belirtirsiniz. InfoType'ların listesi için InfoType algılayıcı referansı başlıklı makaleyi inceleyin. Kimliği gizleme, şablondaki infoTypes özelliğiyle belirtilen metin bölümlerini maskeler.
Söz dizimi
<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify"
"templateName" : "path-to-template"
}]]></Input>
Örnek
Aşağıdaki örnekte, kimliği kaldırılacak giriş, request.content akış değişkeni tarafından taşınan istek gövdesidir.
<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
"text" : "{request.content}"
"templateName" : "projects/[PROJECT_ID]/deidentifyTemplates/1231258663242"
}]]></Input>
Bu örnekteki çıktı, kimliği tanımlanamayan istek içeriği olur.
İstek parametreleri
| Parametre | Açıklama | Tür | Varsayılan | Zorunlu |
|---|---|---|---|---|
| text (metin) | Kimliği gizlenecek metin. Kimlik gizleme işlemi bu veriler üzerinde çalışır. | Nesne | Yok. | Evet. |
| templateName | Kullanılacak şablon. Bu, şablonun şu biçimdeki yolu olacaktır: projects or organizations/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID. Google API ile şablonu oluştururken yanıtın name özellik değerini templateName olarak kullanın. |
Dize | Yok. | Evet. |
Yanıt
Belirtilen infoType'ların değerlerinin infoType adlarıyla değiştirildiği giriş metni.
deidentifyWithType
Metin içeriğindeki hassas verilerin kimliğini gizleyerek eşleşen her değeri infoType'ın adıyla değiştirme InfoType'ların listesi için InfoType algılayıcı referansı başlıklı makaleyi inceleyin. Bu işlem, uzantı yapılandırmasında infoTypes özelliğiyle belirtilen text bölümlerini maskeler.
Aşağıdaki örnekte, telefon numarası hizmet tarafından tanınıyor ve ardından infoType'ın adıyla değiştiriliyor.
Giriş metni:
John Smith, 123 Main St, Seattle, WA 98122, 206-555-0123.Sonuç metni:
John Smith, 123 Main St, Seattle, WA 98122, PHONE_NUMBER.
Söz dizimi
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify"
}]]></Input>
Örnek
Aşağıdaki örnekte, maskelenecek giriş, bir input.email.address akış değişkeninde depolanan e-posta adresidir. Bu örneği desteklemek için uzantının EMAIL_ADDRESS InfoType'ı destekleyecek şekilde yapılandırılması gerekir. InfoType'ların listesi için InfoType Algılayıcı Referansı başlıklı makaleyi inceleyin.
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "{input.email.address}"
}]]></Input>
Bu örnek için çıkış aşağıdaki gibi olur:
{"text":"EMAIL_ADDRESS"}
İstek parametreleri
| Parametre | Açıklama | Tür | Varsayılan | Zorunlu |
|---|---|---|---|---|
| text (metin) | Kimliği gizlenecek metin. | Dize | Yok. | Evet. |
Yanıt
Belirtilen infoType'ların değerlerinin infoType adlarıyla değiştirildiği giriş metni. Örneğin,
{"text":"EMAIL_ADDRESS"}
redactImage
infoType kategorilerinden birine giren metinleri çıkartma Redaksiyonlu içerik algılanır ve opak bir dikdörtgenle gizlenir. Bu işlem, uzantı yapılandırmasında infoTypes özelliğiyle belirtilen image_data bölümlerini maskeler.
InfoType'ların listesi için InfoType algılayıcı referansı başlıklı makaleyi inceleyin.
İstek parametreleri
<Action>redactImage</Action>
<Input><![CDATA[{
"image_data" : "base64-encoded-image-to-analyze",
"image_type" : "type-of-image"
}]]></Input>
| Parametre | Açıklama | Tür | Varsayılan | Zorunlu |
|---|---|---|---|---|
| image_data | Base64 ile kodlanmış görüntü verileri. | Dize | Yok. | Evet. |
| image_type | Resim türünün sabiti. Kullanılabilir değerler IMAGE_JPEG, IMAGE_BMP, IMAGE_PNG, IMAGE_SVG'dir. | Dize | Yok. | Evet. |
Yanıt
Metni çıkartılmış resim.
Yapılandırma Referansı
Bu uzantıyı API proxy'lerinde kullanılacak şekilde yapılandırıp dağıtırken aşağıdakileri kullanın. Apigee konsolunu kullanarak uzantı yapılandırma adımları için Uzantı ekleme ve yapılandırma başlıklı makaleyi inceleyin.
Sık kullanılan uzantı özellikleri
Aşağıdaki özellikler her uzantı için mevcuttur.
| Mülk | Açıklama | Varsayılan | Zorunlu |
|---|---|---|---|
name |
Uzantının bu yapılandırmasını verdiğiniz ad. | Yok | Evet |
packageName |
Apigee Edge'in sağladığı uzantı paketinin adı. | Yok | Evet |
version |
Uzantıyı yapılandırdığınız uzantı paketinin sürüm numarası. | Yok | Evet |
configuration |
Eklediğiniz uzantıya özgü yapılandırma değeri. Bu uzantı paketinin özellikleri başlıklı makaleyi inceleyin | Yok | Evet |
Bu uzantı paketinin özellikleri
Bu uzantıya özel aşağıdaki yapılandırma özelliklerinin değerlerini belirtin.
| Mülk | Açıklama | Varsayılan | Zorunlu |
|---|---|---|---|
| proje kimliği | Cloud Data Loss Prevention API'nin etkinleştirildiği Google Cloud projesi kimliği. | Yok. | Evet. |
| infoTypes | Hassas verilerin bilgi türleri. Boş bırakılırsa hizmet, tüm yerleşik türleri algılar. Google Cloud DLP hizmeti tarafından desteklenen infoType'ların listesi için InfoType Detector Reference (InfoType Algılayıcı Referansı) başlıklı makaleyi inceleyin. | Yok. | Sıra |
| giriş bilgileri | Apigee Edge konsoluna girildiğinde bu, hizmet hesabı anahtar dosyanızın içeriğidir. Yönetim API'si kullanılarak gönderildiğinde, hizmet hesabı anahtar dosyasından oluşturulan base64 kodlu bir değerdir. | Yok. | Evet. |