คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X ข้อมูล
เวอร์ชัน: 1.5.1
ใช้ส่วนขยายนี้เพื่อปิดบังข้อมูลที่ละเอียดอ่อนออกจากเนื้อหาและรูปภาพ เช่น คุณอาจปกปิดหมายเลขบัตรเครดิต ชื่อ และหมายเลขประกันสังคม
ข้อกำหนดเบื้องต้น
เนื้อหานี้ให้ข้อมูลอ้างอิงสำหรับการกำหนดค่าและใช้ส่วนขยายนี้ ก่อนที่จะใช้ส่วนขยายจากพร็อกซี API โดยใช้นโยบาย Extension), คุณต้องทำดังนี้
เปิดใช้ Google Cloud DLP API สำหรับโปรเจ็กต์
ให้สิทธิ์ในระดับการเข้าถึงที่คุณต้องการสำหรับส่วนขยาย
ใช้เนื้อหาของไฟล์ JSON คีย์ที่ได้มาเมื่อเพิ่มและกำหนดค่าส่วนขยายโดยใช้การอ้างอิงการกำหนดค่า
เกี่ยวกับการป้องกันข้อมูลรั่วไหล (DLP) บนระบบคลาวด์
Cloud Data Loss Prevention (DLP) คือ API สำหรับตรวจสอบข้อความ รูปภาพ และข้อมูลอื่นๆ เพื่อระบุและจัดการข้อมูลที่ละเอียดอ่อน
โปรดดูข้อมูลเพิ่มเติมที่หัวข้อภาพรวม DLP หากต้องการอ้างอิง API ที่ส่วนขยายนี้แสดง โปรดดู Cloud Data Loss Prevention (DLP) API
ลองฟัง
ตัวอย่างต่อไปนี้จะแสดงวิธีกำหนดค่าการสนับสนุนสำหรับการดำเนินการของส่วนขยาย Cloud DLP โดยใช้นโยบายส่วนขยายข้อความเสริม
เพื่อให้ลองใช้โค้ดตัวอย่างนี้ได้ง่ายขึ้น ตัวอย่างเหล่านี้ใช้นโยบาย AssignMessage เพื่อตั้งค่าตัวแปรโฟลว์และดึงค่าการตอบสนองของส่วนขยายมาแสดงในเครื่องมือติดตาม
มาสก์ด้วยดาว
ตัวอย่างนี้ใช้การดำเนินการ deidentifyWithMask
เพื่อมาสก์ข้อความประเภทที่ระบุด้วยอักขระที่ระบุในนโยบาย ในที่นี้คืออักขระ *
นโยบาย AssignMessage ต่อไปนี้กำหนดตัวแปร request.content
เพื่อวัตถุประสงค์ในการสาธิต โดยปกติแล้ว คุณจะดึงเนื้อหาคำขอจากคำขอของลูกค้า
<?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>
นโยบาย ExtensionExtension ต่อไปนี้จะเรียกค่าตัวแปร request.content และส่งไปยังส่วนขยาย Cloud DLP (ที่นี่เรียกว่า example-dlp
) ส่วนขยายดังกล่าวได้รับการกำหนดค่าเพื่อมาสก์ค่าตาม infoTypes URL
และ 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>
นโยบาย AssignMessage ต่อไปนี้จะเรียกเอาต์พุตของส่วนขยายเพื่อแสดงในเครื่องมือติดตาม
<?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>
ต่อไปนี้เป็นตัวอย่างของเอาต์พุตจากโค้ดนี้
{"text":"Visit my site at ******************* Or contact me at *****************."}
มาสก์พร้อมระบุชื่อ
ตัวอย่างนี้ใช้การดำเนินการ deidentifyWithType
เพื่อมาสก์ข้อความประเภทที่ระบุด้วยชื่อประเภทข้อมูลเอง เช่น จะแทนที่อีเมล gladys@example.com
ด้วย EMAIL_ADDRESS
นโยบาย AssignMessage ต่อไปนี้กำหนดตัวแปร request.content
เพื่อวัตถุประสงค์ในการสาธิต โดยปกติแล้ว คุณจะดึงเนื้อหาคำขอจากคำขอของลูกค้า
<?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>
นโยบาย ExtensionExtension ต่อไปนี้ดึงค่าตัวแปร request.content
และส่งไปยังส่วนขยาย Cloud DLP (ที่นี่เรียกว่า example-dlp
) ส่วนขยายดังกล่าวได้รับการกำหนดค่าเพื่อมาสก์ค่าตาม infoTypes URL
และ 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>
นโยบาย AssignMessage ต่อไปนี้จะเรียกเอาต์พุตของส่วนขยายเพื่อแสดงในเครื่องมือติดตาม
<?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>
ต่อไปนี้เป็นตัวอย่างของเอาต์พุตจากโค้ดนี้
{"text":"Visit my site at [URL] Or contact me at [EMAIL_ADDRESS]."}
การดำเนินการ
deidentifyWithMask
ลบการระบุตัวตนในข้อมูลที่ละเอียดอ่อนจาก text
และมาสก์ข้อมูลด้วยอักขระ mask
การดำเนินการนี้จะมาสก์ส่วนต่างๆ ของ text
ที่ระบุโดยพร็อพเพอร์ตี้ infoTypes
ในการกำหนดค่าส่วนขยาย
การมาสก์ข้อมูลที่ละเอียดอ่อนจะแทนที่อักขระด้วยสัญลักษณ์ เช่น เครื่องหมายดอกจัน (*) หรือแฮช (#) ประเภทของข้อมูลที่ละเอียดอ่อนสามารถกำหนดค่าในการกำหนดค่าส่วนขยายได้
ไวยากรณ์
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify",
"mask" : "masking-character"
}]]></Input>
ตัวอย่าง
ในตัวอย่างต่อไปนี้ อินพุตที่จะมาสก์คืออีเมลที่จัดเก็บไว้ในตัวแปรโฟลว์ input.email.address
เพื่อรองรับตัวอย่างเฉพาะนี้ ส่วนขยายนี้ต้องได้รับการกำหนดค่าให้รองรับ infoType EMAIL_ADDRESS ดูรายการ infoTypes ได้ที่ข้อมูลอ้างอิงเกี่ยวกับตัวตรวจจับ InfoType
<Action>deidentifyWithMask</Action>
<Input><![CDATA[{
"text" : "{input.email.address}",
"mask" : "*"
}]]></Input>
<Output>masked.output</Output>
เอาต์พุตสำหรับตัวอย่างนี้จะเป็นดังนี้
{"text":"*****************"}
พารามิเตอร์คำขอ
พารามิเตอร์ | คำอธิบาย | Type | ค่าเริ่มต้น | จำเป็น |
---|---|---|---|---|
ข้อความ | ข้อความที่จะลบการระบุตัวตน | สตริง | ไม่มี | ใช่ |
มาสก์ | อักขระที่จะใช้เพื่อมาสก์ข้อมูลที่ละเอียดอ่อน | สตริง | ไม่มี | ใช่ |
คำตอบ
ข้อความอินพุตที่มีค่า infoTypes ที่ระบุซึ่งแทนที่ด้วยอักขระที่ระบุ ตัวอย่างเช่น
{"text":"*********"}
deidentifyWithTemplate
ลบการระบุตัวตนในข้อมูลที่ละเอียดอ่อนในเนื้อหาข้อความโดยใช้เทมเพลตที่กำหนดค่าข้อความที่จะลบการระบุตัวตนและวิธีจัดการ
เทมเพลตมีประโยชน์ในการแยกการกำหนดค่า เช่น สิ่งที่คุณตรวจสอบและวิธีการลบการระบุตัวตนออกจากการใช้งานการเรียก API เทมเพลตมอบวิธีนำการกำหนดค่ามาใช้ซ้ำและทำให้เกิดความสอดคล้องกันระหว่างผู้ใช้และชุดข้อมูล
ในเทมเพลต คุณจะระบุ infoTypes ที่แสดงถึงเนื้อหาที่จะลบการระบุตัวตน ดูรายการ infoTypes ได้ที่ข้อมูลอ้างอิงเกี่ยวกับตัวตรวจจับ InfoType การลบการระบุตัวตนจะมาสก์ข้อความส่วนที่พร็อพเพอร์ตี้ infoTypes
ระบุในเทมเพลต
ไวยากรณ์
<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify"
"templateName" : "path-to-template"
}]]></Input>
ตัวอย่าง
ในตัวอย่างต่อไปนี้ อินพุตที่จะลบการระบุตัวตนคือเนื้อหาของคําขอที่มี ตัวแปรโฟลว์ request.content
<Action>deidentifyWithTemplate</Action>
<Input><![CDATA[{
"text" : "{request.content}"
"templateName" : "projects/[PROJECT_ID]/deidentifyTemplates/1231258663242"
}]]></Input>
เอาต์พุตสำหรับตัวอย่างนี้คือเนื้อหาคำขอที่ลบการระบุตัวตน
พารามิเตอร์คำขอ
พารามิเตอร์ | คำอธิบาย | Type | ค่าเริ่มต้น | จำเป็น |
---|---|---|---|---|
ข้อความ | ข้อความที่จะลบการระบุตัวตน นี่คือกระบวนการลบการระบุตัวตน | ออบเจ็กต์ | ไม่มี | ใช่ |
templateName | เทมเพลตที่จะใช้ เส้นทางนี้คือเส้นทางไปยังเทมเพลตในรูปแบบต่อไปนี้: projects or organizations/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID เมื่อสร้างเทมเพลตด้วย Google API ให้ใช้ค่าพร็อพเพอร์ตี้ name ของการตอบกลับเป็น templateName |
สตริง | ไม่มี | ใช่ |
คำตอบ
ข้อความอินพุตที่มีค่าของ infoType ที่ระบุซึ่งแทนที่ด้วยชื่อ infoType
deidentifyWithType
ลบการระบุตัวตนในข้อมูลที่ละเอียดอ่อนในเนื้อหาข้อความ โดยแทนที่ค่าที่ตรงกันแต่ละค่าด้วยชื่อของ infoType ดูรายการ infoTypes ได้ที่ข้อมูลอ้างอิงเกี่ยวกับตัวตรวจจับ InfoType การดำเนินการนี้จะมาสก์ส่วนต่างๆ ของ text
ที่ระบุโดยพร็อพเพอร์ตี้ infoTypes
ในการกำหนดค่าส่วนขยาย
ในตัวอย่างต่อไปนี้ บริการจะจดจำหมายเลขโทรศัพท์ จากนั้นแทนที่ด้วยชื่อของ infoType
ข้อความอินพุต:
John Smith, 123 Main St, Seattle, WA 98122, 206-555-0123.
ข้อความผลลัพธ์:
John Smith, 123 Main St, Seattle, WA 98122, PHONE_NUMBER.
ไวยากรณ์
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "text-to-deidentify"
}]]></Input>
ตัวอย่าง
ในตัวอย่างต่อไปนี้ อินพุตที่จะมาสก์คืออีเมลที่จัดเก็บไว้ในตัวแปรโฟลว์ input.email.address
เพื่อรองรับตัวอย่างเฉพาะนี้ ส่วนขยายนี้ต้องได้รับการกำหนดค่าให้รองรับ infoType EMAIL_ADDRESS ดูรายการ infoTypes ได้ที่ข้อมูลอ้างอิงเกี่ยวกับตัวตรวจจับ InfoType
<Action>deidentifyWithType</Action>
<Input><![CDATA[{
"text" : "{input.email.address}"
}]]></Input>
เอาต์พุตสำหรับตัวอย่างนี้จะเป็นดังนี้
{"text":"EMAIL_ADDRESS"}
พารามิเตอร์คำขอ
พารามิเตอร์ | คำอธิบาย | Type | ค่าเริ่มต้น | จำเป็น |
---|---|---|---|---|
ข้อความ | ข้อความที่จะลบการระบุตัวตน | สตริง | ไม่มี | ใช่ |
คำตอบ
ข้อความอินพุตที่มีค่าของ infoType ที่ระบุซึ่งแทนที่ด้วยชื่อ infoType ตัวอย่างเช่น
{"text":"EMAIL_ADDRESS"}
redactImage
ปกปิดข้อความที่อยู่ในหมวดหมู่ infoType ระบบจะตรวจพบเนื้อหาที่ปกปิดและบดบังด้วยสี่เหลี่ยมผืนผ้าทึบ การดำเนินการนี้จะมาสก์ส่วนต่างๆ ของ image_data
ที่ระบุโดยพร็อพเพอร์ตี้ infoTypes
ในการกำหนดค่าส่วนขยาย
ดูรายการ infoTypes ได้ที่ข้อมูลอ้างอิงเกี่ยวกับตัวตรวจจับ InfoType
พารามิเตอร์คำขอ
<Action>redactImage</Action>
<Input><![CDATA[{
"image_data" : "base64-encoded-image-to-analyze",
"image_type" : "type-of-image"
}]]></Input>
พารามิเตอร์ | คำอธิบาย | Type | ค่าเริ่มต้น | จำเป็น |
---|---|---|---|---|
image_data | ข้อมูลรูปภาพที่เข้ารหัสใน base64 | สตริง | ไม่มี | ใช่ |
image_type | ค่าคงที่ของประเภทรูปภาพ ค่าที่ใช้ได้ ได้แก่ IMAGE_JPEG, IMAGE_BMP, IMAGE_PNG, IMAGE_SVG | สตริง | ไม่มี | ใช่ |
คำตอบ
รูปภาพที่มีข้อความได้รับการปกปิด
ข้อมูลอ้างอิงการกำหนดค่า
ใช้ข้อมูลต่อไปนี้เมื่อคุณกำหนดค่าและทำให้ส่วนขยายนี้ใช้งานได้ เพื่อใช้ในพร็อกซี API โปรดดูขั้นตอนการกำหนดค่าส่วนขยายโดยใช้คอนโซล Apigee ในการเพิ่มและการกำหนดค่าส่วนขยาย
คุณสมบัติส่วนขยายที่พบบ่อย
พร็อพเพอร์ตี้ต่อไปนี้มีอยู่ในส่วนขยายทุกรายการ
พร็อพเพอร์ตี้ | คำอธิบาย | ค่าเริ่มต้น | ต้องระบุ |
---|---|---|---|
name |
ชื่อที่คุณกําหนดให้การกําหนดค่านี้ของส่วนขยาย | ไม่มี | ได้ |
packageName |
ชื่อแพ็กเกจส่วนขยายที่ระบุโดย Apigee Edge | ไม่มี | ได้ |
version |
หมายเลขเวอร์ชันของแพ็กเกจส่วนขยายที่คุณกําหนดค่าส่วนขยาย | ไม่มี | ได้ |
configuration |
ค่าการกําหนดค่าเฉพาะสําหรับส่วนขยายที่คุณกําลังเพิ่ม ดูพร็อพเพอร์ตี้สําหรับแพ็กเกจส่วนขยายนี้ | ไม่มี | ได้ |
พร็อพเพอร์ตี้สำหรับแพ็กเกจส่วนขยายนี้
ระบุค่าสำหรับพร็อพเพอร์ตี้การกำหนดค่าต่อไปนี้ที่เจาะจงสำหรับส่วนขยายนี้
พร็อพเพอร์ตี้ | คำอธิบาย | ค่าเริ่มต้น | จำเป็น |
---|---|---|---|
projectId | รหัสโปรเจ็กต์ GCP ที่เปิดใช้ Cloud Data Loss Prevention API | ไม่มี | ใช่ |
infoTypes | ประเภทข้อมูลที่ละเอียดอ่อน หากไม่กำหนด บริการจะตรวจหาประเภทในตัวทั้งหมด โปรดดูรายการ infoType ที่บริการ DLP ของ Google Cloud รองรับที่หัวข้อข้อมูลอ้างอิงเกี่ยวกับตัวตรวจจับ InfoType | ไม่มี | ไม่มี |
ข้อมูลเข้าสู่ระบบ | ซึ่งเมื่อป้อนในคอนโซล Apigee Edge คือเนื้อหาในไฟล์คีย์บัญชีบริการ เมื่อส่งผ่าน API การจัดการ ค่าดังกล่าวคือค่าที่เข้ารหัสแบบ Base64 ซึ่งสร้างขึ้นจากไฟล์คีย์บัญชีบริการ | ไม่มี | ใช่ |