Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. info
Sürüm: 2.0.0
İç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ı çıkartabilirsiniz.
Ön koşullar
Bu içerikte, bu uzantıyı yapılandırma ve kullanmayla ilgili referanslar sağlanmaktadır. ExtensionCallout politikasını kullanarak uzantıyı bir API proxy'sinden kullanmadan önce şunları yapmanız gerekir:
Projeniz için Google Cloud DLP API'yi etkinleştirin.
Uzantının sahip olmasını istediğiniz erişim düzeyi için izin verin.
Hizmet hesabı için anahtar oluşturmak üzere GCP Console'u kullanın.
Yapılandırma referansını kullanarak uzantıyı ekleyip yapılandırırken elde edilen anahtar JSON dosyasının içeriğini kullanın.
Cloud Data Loss Prevention (DLP) hakkında
Cloud Veri Kaybını Önleme (DLP), hassas verileri tanımlamak ve yönetmek için metin, resim ve diğer verileri denetleyen bir API'dir.
Daha fazla bilgi için Veri Kaybını Önleme'ye genel bakış başlıklı makaleyi inceleyin. Bu uzantının kullanıma sunduğu API için Cloud Data Loss Prevention (DLP) API'ye bakın.
Örnekler
Aşağıdaki örneklerde, ExtensionCallout politikası kullanılarak Cloud DLP uzantı işlemleri için desteğin nasıl yapılandırılacağı gösterilmektedir.
Bu örnek kodu denemeyi kolaylaştırmak için bu örneklerde, akış değişkeni değerlerini ayarlamak ve İzleme aracında gösterilecek uzantı yanıtı değerlerini almak için bir AssignMessage politikası kullanılır.
Yıldızlı maske
Bu örnekte, belirtilen metin türlerini politikada belirtilen bir karakterle (burada *
karakteri) maskelemek için deidentifyWithMask
işlevi kullanılmaktadır.
Aşağıdaki AssignMessage politikası, açıklama amacıyla request.content
değişkenini ayarlar. Normalde istek içeriğini istemciden 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'e göre değerleri maskeleyecek şekilde 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ı, uzantının çıktısını Trace aracında görüntülemek için 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 koddan elde edilen çıkış örneği 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 adresi EMAIL_ADDRESS
ile değiştirilir.
Aşağıdaki AssignMessage politikası, açıklama amacıyla request.content
değişkenini ayarlar. Normalde istek içeriğini istemciden 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'e göre değerleri maskeleyecek şekilde 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ı, uzantının çıktısını Trace aracında görüntülemek için 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 koddan elde edilen çıkış örneği verilmiştir.
{"text":"Visit my site at [URL] Or contact me at [EMAIL_ADDRESS]."}
İşlemler
deidentifyWithMask
text
'teki hassas verilerin kimliğini gizleyin ve verileri mask
karakteriyle maskeleyin. Bu işlem, uzantı yapılandırmasında infoTypes
mülkü tarafından belirtilen text
bölümlerinin maskelenmesini sağlar.
Hassas verilerin maskelenmesinde, karakterler yıldız (*) veya karma (#) gibi bir simgeyle değiştirilir. Hassas verilerin türleri, uzantı yapılandırmasında yapılandırılabilir.
Söz dizimi
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify",
"mask" : "masking-character"
}]]></Input>
Örnek
Aşağıdaki örnekte, maskelenmesi gereken giriş, bir input.email.address
akış değişkeninde depolanan bir e-posta adresidir. Bu örneği desteklemek için bu uzantı, EMAIL_ADDRESS bilgi türünü destekleyecek şekilde yapılandırılmış olmalıdır. InfoType'ların listesi için InfoType Algılayıcı Referansı başlıklı makaleye bakın.
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "{input.email.address}",
"mask" : "*"
}]]></Input>
<Output>masked.output</Output>
Bu örnek için çıkış şu şekilde olur:
{"text":"*****************"}
İstek parametreleri
Parametre | Açıklama | Tür | Varsayılan | Zorunlu |
---|---|---|---|---|
text (metin) | Kimliği gizlenecek 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 bu metnin nasıl işleneceğini yapılandıran bir şablon kullanarak metin içeriğindeki hassas verilerin kimliğini gizleyin.
Şablonlar, neyi denetleyeceğiniz ve kimliğini nasıl kaldıracağı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 gizlenecek içeriği temsil eden infoTypes öğelerini belirtirsiniz. InfoType'ların listesi için InfoType algılayıcı referansı başlıklı makaleyi inceleyin. Kimliği gizleme, şablondaki infoTypes
mülkü tarafından 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 gizleme girişi, 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 örnekte, kimliği gizlenen istek içeriği çıktı olarak gösterilir.
İstek parametreleri
Parametre | Açıklama | Tür | Varsayılan | Zorunlu |
---|---|---|---|---|
text (metin) | Kimliği gizlenecek metin. Kimlik gizleme işlemi bu şekilde ç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 templateName olarak yanıtın name mülk değerini kullanın. |
Dize | Yok. | Evet. |
Yanıt
Belirtilen infoType değerlerinin infoType adlarıyla değiştirildiği giriş metni.
deidentifyWithType
Eşleşen her değeri infoType adıyla değiştirerek metin içeriğindeki hassas verilerin kimliğini gizleme. 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
mülkü tarafından belirtilen text
bölümlerinin maskelenmesini sağlar.
Aşağıdaki örnekte, telefon numarası hizmet tarafından tanındıktan sonra infoType öğesinin adıyla değiştirilir.
Metin girin:
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, maskelenmesi gereken giriş, bir input.email.address
akış değişkeninde depolanan bir e-posta adresidir. Bu örneği desteklemek için bu uzantı, EMAIL_ADDRESS bilgi türünü destekleyecek şekilde yapılandırılmış olmalıdır. InfoType'ların listesi için InfoType Algılayıcı Referansı başlıklı makaleye bakın.
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "{input.email.address}"
}]]></Input>
Bu örnek için çıkış şu şekilde 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 değerlerinin infoType adlarıyla değiştirildiği giriş metni. Örneğin,
{"text":"EMAIL_ADDRESS"}
redactImage
infoType kategorilerinden birine giren metni çıkartma Kırpılan içerik algılanır ve opak bir dikdörtgenle gizlenir. Bu işlem, uzantı yapılandırmasında infoTypes
mülkü tarafından belirtilen image_data
bölümlerinin maskelenmesini sağlar.
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 olarak kodlanmış görüntü verileri. | Dize | Yok. | Evet. |
image_type | Resim türünün sabit değeri. Kullanılabilir değerler IMAGE_JPEG, IMAGE_BMP, IMAGE_PNG, IMAGE_SVG'dir. | Dize | Yok. | Evet. |
Yanıt
Metnin çıkartıldığı resim.
Yapılandırma Referansı
Bu uzantıyı API proxy'lerinde kullanılmak üzere yapılandırırken ve dağıtırken aşağıdakileri kullanın. Apigee konsolunu kullanarak bir uzantıyı yapılandırma adımları için Uzantı ekleme ve yapılandırma başlıklı makaleyi inceleyin.
Ortak 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ı paketine ait özellikler
Bu uzantıya özgü aşağıdaki yapılandırma özellikleri için değerler belirtin.
Mülk | Açıklama | Varsayılan | Zorunlu |
---|---|---|---|
proje kimliği | Cloud Data Loss Prevention API'nin etkinleştirildiği GCP proje kimliği. | Yok. | Evet. |
infoTypes | Hassas verilerin bilgi türleri. Bu parametre atlanırsa hizmet tüm yerleşik türleri algılar. Google Cloud DLP hizmeti tarafından desteklenen infoType'ların listesi için InfoType algılayıcı referansı başlıklı makaleyi inceleyin. | Yok. | Sıra |
giriş bilgileri | Apigee Edge konsoluna girildiğinde, hizmet hesabı anahtar dosyanızın içeriğidir. Yönetim API'si üzerinden gönderildiğinde, hizmet hesabı anahtar dosyasından oluşturulan base64 kodlu bir değerdir. | Yok. | Evet. |