จัดการป้ายกำกับความอ่อนไหวในงานนำเสนอ PowerPoint ด้วย .NET
ภาพรวม
Microsoft Purview sensitivity labels ช่วยให้องค์กรจัดประเภทและควบคุมเอกสารได้ ในระหว่างการประมวลผลการนำเสนออัตโนมัติ แอปพลิเคชันอาจต้องคงไว้ซึ่งป้ายกำกับที่มีอยู่แล้ว ใส่ป้ายที่เลือกโดยนโยบาย อัปเดตสภาพของมัน หรือย้ายเมทาดาต้าป้ายที่เขียนโดยกระบวนการ Microsoft Information Protection (MIP) รุ่นเก่า
Aspose.Slides เปิดเผยเมทาดาต้าป้ายกำกับความอ่อนไหวสมัยใหม่ผ่าน Presentation.SensitivityLabels. คุณสมบัตินี้คืนค่า ISensitivityLabelCollection ที่สามารถตรวจสอบและแก้ไขได้ก่อนบันทึกการนำเสนอเป็น PPTX.
Note
ตัวระบุป้ายกำกับความอ่อนไหวและข้อมูลนโยบายถูกกำหนดโดยการกำหนดค่า Microsoft Purview ของคุณ ตรวจสอบความพร้อมใช้งานของป้ายและข้อกำหนดนโยบายในสภาพแวดล้อมของคุณก่อนเพิ่มหรือย้ายเมทาดาต้า ค่าใน ISensitivityLabel.ContentMarkTypes อธิบายการทำเครื่องหมายเนื้อหาที่เชื่อมโยงกับป้าย; พวกมันเองไม่ได้เพิ่มข้อความหรือรูปทรงที่มองเห็นได้บนสไลด์.ทำความเข้าใจคุณสมบัติป้ายกำกับความอ่อนไหว
| คุณสมบัติ | จุดประสงค์ |
|---|---|
| ISensitivityLabel.Id | ระบุป้ายกำกับความอ่อนไหวในนโยบาย Purview. |
| ISensitivityLabel.SiteId | ระบุไซต์ที่เชื่อมโยงกับนโยบายป้ายกำกับ. |
| ISensitivityLabel.IsEnabled | ระบุว่าป้ายกำกับเปิดใช้งานหรือไม่. |
| ISensitivityLabel.IsRemoved | ระบุว่าป้ายกำกับถูกลบแล้ว ตั้งค่าสิ่งนี้เป็น true เมื่อต้องการบันทึกสถานะการลบในเมทาดาต้า. |
| ISensitivityLabel.AssignmentMethodType | กำหนดว่าป้ายกำกับถูกใส่โดยอัตโนมัติหรือผ่านการตัดสินใจของผู้ใช้. |
| ISensitivityLabel.ContentMarkTypes | แสดงประเภทการทำเครื่องหมายเนื้อหาที่เชื่อมโยงกับป้ายกำกับ. |
การนับจำนวน SensitivityLabelAssignmentType ระบุวิธีการที่ป้ายกำกับถูกกำหนด:
- SensitivityLabelAssignmentType.Standard แสดงป้ายกำกับเริ่มต้นหรือที่ใส่อัตโนมัติ.
- SensitivityLabelAssignmentType.Privileged แสดงป้ายที่ใส่ผ่านการตัดสินใจของผู้ใช้ รวมถึงการใส่ด้วยตนเอง, แนะนำ, และบังคับ.
การนับจำนวน SensitivityLabelContentType ระบุการทำเครื่องหมายที่เชื่อมโยงกับป้ายกำกับ:
| ค่า | ความหมาย |
|---|---|
| SensitivityLabelContentType.None | ป้ายกำกับถูกใส่โดยค่าเริ่มต้นหรืออัตโนมัติ. |
| SensitivityLabelContentType.Header | การทำเครื่องหมายเนื้อหาส่วนหัวเชื่อมโยงกับป้าย. |
| SensitivityLabelContentType.Footer | การทำเครื่องหมายเนื้อหาส่วนท้ายเชื่อมโยงกับป้าย. |
| SensitivityLabelContentType.Watermark | การทำเครื่องหมายวอเตอร์มาร์คเชื่อมโยงกับป้าย. |
| SensitivityLabelContentType.Encryption | การป้องกันด้วยการเข้ารหัสเชื่อมโยงกับป้าย. |
หลายประเภทการทำเครื่องหมายสามารถเชื่อมโยงกับป้ายเดียวได้.
แสดงรายการป้ายกำกับความอ่อนไหวที่มีอยู่
อ่านคอลเลกชันป้ายสมัยใหม่จาก Presentation.SensitivityLabels และทำการวนลูป แสดงตัวอย่างต่อไปนี้แสดงคุณสมบัติและการทำเครื่องหมายเนื้อหาที่จัดเก็บสำหรับแต่ละป้าย:
using System;
using Aspose.Slides;
using var presentation = new Presentation("presentation.pptx");
var sensitivityLabels = presentation.SensitivityLabels;
foreach (var sensitivityLabel in sensitivityLabels)
{
Console.WriteLine("Label ID: " + sensitivityLabel.Id);
Console.WriteLine("Site ID: " + sensitivityLabel.SiteId);
Console.WriteLine("Enabled: " + sensitivityLabel.IsEnabled);
Console.WriteLine("Removed: " + sensitivityLabel.IsRemoved);
Console.WriteLine("Assignment method: " + sensitivityLabel.AssignmentMethodType);
foreach (var contentMarkType in sensitivityLabel.ContentMarkTypes)
{
Console.WriteLine("Content marking: " + contentMarkType);
}
}
เพิ่มป้ายกำกับความอ่อนไหวพร้อมการทำเครื่องหมายเนื้อหา
ใช้ ISensitivityLabelCollection.Add กับตัวระบุป้าย, ตัวระบุไซต์, สภาพการเปิดใช้งาน, และวิธีการกำหนด หลังจากเมธอดคืนค่า ISensitivityLabel ใหม่ ให้เพิ่มค่าการทำเครื่องหมายที่จำเป็นผ่าน ISensitivityLabel.ContentMarkTypes.
ตัวอย่างต่อไปนี้เพิ่มป้ายที่เลือกด้วยตนเองซึ่งเชื่อมโยงกับการทำเครื่องหมายส่วนท้ายและวอเตอร์มาร์ค แล้วบันทึกผลลัพธ์เป็น PPTX:
using System;
using Aspose.Slides;
using Aspose.Slides.Export;
using var presentation = new Presentation("presentation.pptx");
var sensitivityLabels = presentation.SensitivityLabels;
var labelIdentifier = "{11111111-2222-3333-4444-555555555555}";
var siteIdentifier = Guid.Parse("{aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee}");
var isEnabled = true;
var assignmentMethod = SensitivityLabelAssignmentType.Privileged;
var sensitivityLabel = sensitivityLabels.Add(
labelIdentifier,
siteIdentifier,
isEnabled,
assignmentMethod);
sensitivityLabel.ContentMarkTypes.Add(SensitivityLabelContentType.Footer);
sensitivityLabel.ContentMarkTypes.Add(SensitivityLabelContentType.Watermark);
presentation.Save("presentation_with_label.pptx", SaveFormat.Pptx);
อัปเดตป้ายกำกับความอ่อนไหว
คุณสมบัติของ ISensitivityLabel สามารถอ่าน/เขียนได้ ยกเว้นคอลเลกชันที่คืนค่าจาก ISensitivityLabel.ContentMarkTypes จะถูกแก้ไขผ่านการดำเนินการรายการ หลังจากค้นหาป้ายที่ต้องการ คุณสามารถอัปเดตตัวระบุ, ตัวระบุไซต์, สภาพการเปิดใช้งาน, วิธีการกำหนด, สภาพการลบ, และประเภทการทำเครื่องหมายเนื้อหา บันทึกการนำเสนอเพื่อบันทึกการเปลี่ยนแปลง
ตัวอย่างต่อไปนี้อัปเดตสภาพการเปิดใช้งานและวิธีการกำหนดของป้ายแรก:
using Aspose.Slides;
using Aspose.Slides.Export;
using var presentation = new Presentation("presentation.pptx");
var sensitivityLabels = presentation.SensitivityLabels;
if (sensitivityLabels.Count > 0)
{
var sensitivityLabel = sensitivityLabels[0];
sensitivityLabel.IsEnabled = true;
sensitivityLabel.AssignmentMethodType = SensitivityLabelAssignmentType.Privileged;
}
presentation.Save("presentation_with_updated_label.pptx", SaveFormat.Pptx);
ทำเครื่องหมายป้ายกำกับความอ่อนไหวว่าเป็นการลบ
เพื่อคงไว้ซึ่งข้อเท็จจริงว่าป้ายถูกลบ ให้ค้นหาป้ายและตั้ง ISensitivityLabel.IsRemoved เป็น true สิ่งนี้จะรักษารายการป้ายไว้พร้อมบันทึกสถานะการลบ หากต้องการลบรายการจากคอลเลกชันสมัยใหม่ ให้ใช้ ISensitivityLabelCollection.RemoveAt; ใช้ ISensitivityLabelCollection.Clear เพื่อลบทุกรายการ
ตัวอย่างต่อไปนี้ทำเครื่องหมายป้ายเฉพาะว่าเป็นการลบและบันทึกการนำเสนอที่อัปเดต:
using System;
using Aspose.Slides;
using Aspose.Slides.Export;
using var presentation = new Presentation("presentation.pptx");
var sensitivityLabels = presentation.SensitivityLabels;
var targetLabelIdentifier = "{11111111-2222-3333-4444-555555555555}";
foreach (var sensitivityLabel in sensitivityLabels)
{
var isTargetLabel = string.Equals(
sensitivityLabel.Id,
targetLabelIdentifier,
StringComparison.OrdinalIgnoreCase);
if (isTargetLabel)
{
sensitivityLabel.IsRemoved = true;
break;
}
}
presentation.Save("presentation_with_removed_label.pptx", SaveFormat.Pptx);
อ่านและย้ายป้ายกำกับความอ่อนไหว MIP รุ่นเก่า
เวิร์กโฟลว์ที่อิง MIP รุ่นเก่าสามารถเก็บเมทาดาต้าป้ายกำกับความอ่อนไหวในคุณสมบัติเ�เอกสารที่กำหนดเองแทนคอลเลกชันสมัยใหม่ อ่านเมทาดาต้านั้นด้วย IDocumentProperties.GetSensitivityLabels. เมธอดจะวิเคราะห์คุณสมบัติกำหนดเองรุ่นเก่าและคืนค่าอาเรย์ของวัตถุ ISensitivityLabel.
เพื่อย้ายเมทาดาต้า ให้เพิ่มป้ายที่คืนค่ามาแต่ละอันไปยัง ISensitivityLabelCollection สมัยใหม่ผ่าน ISensitivityLabelCollection.Add. เนื่องจากการเพิ่มป้ายที่มีตัวระบุซ้ำจะทำให้เกิดข้อยกเว้น ตัวอย่างจึงตรวจสอบคอลเลกชันเป้าหมายก่อนคัดลอกแต่ละป้าย คุณสามารถเพิ่มการตรวจสอบเพิ่มเติมเพื่อยืนยันว่าป้ายรุ่นเก่ายังคงมีอยู่ในนโยบาย Purview ปัจจุบันหรือไม่
using System;
using Aspose.Slides;
using Aspose.Slides.Export;
using var presentation = new Presentation("presentation_with_legacy_labels.pptx");
var legacySensitivityLabels = presentation.DocumentProperties.GetSensitivityLabels();
var modernSensitivityLabels = presentation.SensitivityLabels;
foreach (var legacySensitivityLabel in legacySensitivityLabels)
{
var labelAlreadyExists = false;
foreach (var modernSensitivityLabel in modernSensitivityLabels)
{
labelAlreadyExists = string.Equals(
modernSensitivityLabel.Id,
legacySensitivityLabel.Id,
StringComparison.OrdinalIgnoreCase);
if (labelAlreadyExists)
{
break;
}
}
if (!labelAlreadyExists)
{
modernSensitivityLabels.Add(legacySensitivityLabel);
}
}
presentation.Save("presentation_with_modern_labels.pptx", SaveFormat.Pptx);
การย้ายจะคัดลอกวัตถุป้ายที่วิเคราะห์แล้วเข้าไปในคอลเลกชันสมัยใหม่ ไม่จำเป็นต้องลบคุณสมบัติเ�เอกสารที่กำหนดเองทั้งหมด ดังนั้นเมทาดาต้าเอกสารที่ไม่เกี่ยวข้องจึงคงอยู่ใช้ได้ ใช้ IPresentation.Save ร่วมกับ SaveFormat.Pptx เพื่อเขียนเมทาดาต้าป้ายสมัยใหม่ลงในไฟล์ PPTX
คำถามที่พบบ่อย
การเพิ่มประเภทการทำเครื่องหมายเนื้อหาจะสร้างส่วนหัว, ส่วนท้าย หรือวอเตอร์มาร์คที่มองเห็นได้บนสไลด์หรือไม่?
ไม่ ค่าที่เพิ่มผ่าน ISensitivityLabel.ContentMarkTypes อธิบายการทำเครื่องหมายที่เชื่อมโยงกับป้ายกำกับความอ่อนไหว พวกมันไม่สร้างข้อความหรือรูปทรงที่มองเห็นได้ในงานนำเสนอ ให้เพิ่มเนื้อหาสไลด์ที่สอดคล้องกันแยกต่างหากหากเวิร์กโฟลว์ของคุณต้องการแสดงการทำเครื่องหมายเหล่านั้น
ความแตกต่างระหว่างทำเครื่องหมายป้ายว่าเป็นการลบและการลบออกจากคอลเลกชันคืออะไร?
การตั้งค่า ISensitivityLabel.IsRemoved เป็น true จะเก็บรายการป้ายไว้และบันทึกสถานะการลบ การเรียกใช้ ISensitivityLabelCollection.RemoveAt จะลบรายการออกจากคอลเลกชันสมัยใหม่ เลือกการดำเนินการที่สอดคล้องกับความต้องการการเก็บเมทาดาต้าขององค์กรของคุณ
งานนำเสนอสามารถมีเมทาดาต้า MIP รุ่นเก่าและป้ายกำกับความอ่อนไหวสมัยใหม่พร้อมกันได้หรือไม่?
ได้ ป้ายรุ่นเก่าสามารถคงอยู่ในคุณสมบัติเ�เอกสารที่กำหนดเองในขณะที่ป้ายสมัยใหม่เข้าถึงได้ผ่าน Presentation.SensitivityLabels. ใช้ IDocumentProperties.GetSensitivityLabels เพื่ออ่านเมทาดาต้าเก่าและย้ายเฉพาะป้ายที่ยังไม่ปรากฏในคอลเลกชันสมัยใหม่
เกิดอะไรขึ้นเมื่อป้ายที่มีตัวระบุเดียวกันถูกเพิ่มหลายครั้ง?
ISensitivityLabelCollection.Add จะโยน ArgumentException เมื่อคอลเลกชันมีป้ายที่มีตัวระบุเดียวกันอยู่แล้ว ตรวจสอบค่าของ ISensitivityLabel.Id ก่อนทำการเพิ่มหรือย้ายป้าย
ควรใช้รูปแบบไฟล์ใดเพื่อรักษาป้ายกำกับความอ่อนไหวที่อัปเดต?
บันทึกงานนำเสนอเป็น PPTX โดยเรียก IPresentation.Save ร่วมกับ SaveFormat.Pptx, ตามที่แสดงในตัวอย่างข้างต้น.