Érzékenységi címkék kezelése PowerPoint prezentációkban Python nyelven
Áttekintés
A Microsoft Purview érzékenységi címkék segítik a szervezeteket a dokumentumok osztályozásában és kormányzásában. Automatizált prezentációfeldolgozás során egy alkalmazásnak meg kell őriznie egy meglévő címkét, alkalmaznia kell egy szabály által kiválasztott címkét, frissítenie kell annak állapotát, vagy migrálni kell a régebbi Microsoft Information Protection (MIP) munkafolyamat által írt címke metaadatokat.
Aspose.Slides a modern érzékenységi címke metaadatokat a Presentation.getSensitivityLabels segítségével teszi elérhetővé. Ez a metódus egy SensitivityLabelCollection objektumot ad vissza, amelyet ellenőrizhet és módosíthat, mielőtt a prezentációt PPTX formátumban menti.
Note
Az érzékenységi címke azonosítókat és a szabályzati információkat a Microsoft Purview konfigurációja határozza meg. Ellenőrizze a címkék elérhetőségét és a szabályzat követelményeit a környezetében, mielőtt metaadatokat adna hozzá vagy migrálna. A SensitivityLabel.getContentMarkTypes értékek a címkéhez kapcsolódó tartalomjelzéseket írják le; önmagukban nem adnak hozzá látható szöveget vagy alakzatot a diákhoz.Érzékenységi címke tulajdonságainak megértése
Minden SensitivityLabel a következő metaadatokat tartalmazza:
| Módszerek | Cél |
|---|---|
| getId and setId | Az érzékenységi címke azonosítójának lekérése vagy beállítása a Purview szabályzatban. |
| getSiteId and setSiteId | Az címke szabályzathoz kapcsolódó hely (site) lekérése vagy beállítása. |
| isEnabled and setEnabled | Címke engedélyezett állapotának lekérése vagy beállítása. |
| isRemoved and setRemoved | Címke eltávolított állapotának lekérése vagy beállítása. Állítsa True‑ra, ha a eltávolítási állapotot meg kell őrizni a metaadatokban. |
| getAssignmentMethodType and setAssignmentMethodType | Címke automatikus vagy felhasználói döntés alapján történő alkalmazásának lekérése vagy beállítása. |
| getContentMarkTypes | Címkéhez kapcsolódó tartalomjelzés típusok lekérése. |
A SensitivityLabelAssignmentType osztály meghatározza, hogy a címkét hogyan rendelték hozzá:
- Standard egy alapértelmezett vagy automatikusan alkalmazott címkét jelöl.
- Privileged egy felhasználói döntés alapján alkalmazott címkét jelöl, beleértve a kézzel alkalmazott, ajánlott és kötelező címkéket.
A SensitivityLabelContentType osztály határozza meg a címkéhez kapcsolódó jelzést:
| Érték | Jelentés |
|---|---|
| None | A címke alapértelmezés szerint vagy automatikusan lett alkalmazva. |
| Header | Fejléc tartalomjelzés kapcsolódik a címkéhez. |
| Footer | Lábjegyzet tartalomjelzés kapcsolódik a címkéhez. |
| Watermark | Vízjel tartalomjelzés kapcsolódik a címkéhez. |
| Encryption | Titkosítási védelem kapcsolódik a címkéhez. |
Több jelzéstípus is kapcsolható egyetlen címkéhez.
Meglévő érzékenységi címkék listázása
Olvassa be a modern címke gyűjteményt a Presentation.getSensitivityLabels segítségével, és sorolja fel. Az alábbi példa minden tulajdonságot és a címkékhez tárolt tartalomjelzést listáz.
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation
presentation = Presentation("presentation.pptx")
try:
sensitivity_labels = presentation.getSensitivityLabels()
for sensitivity_label in sensitivity_labels:
print("Label ID:", sensitivity_label.getId())
print("Site ID:", sensitivity_label.getSiteId())
print("Enabled:", sensitivity_label.isEnabled())
print("Removed:", sensitivity_label.isRemoved())
print("Assignment method:", sensitivity_label.getAssignmentMethodType())
for content_mark_type in sensitivity_label.getContentMarkTypes():
print("Content marking:", content_mark_type)
finally:
presentation.dispose()
Érzékenységi címke hozzáadása tartalomjelzéssel
A SensitivityLabelCollection.add metódust használja a címkeazonosítóval, a helyazonosítóval, az engedélyezett állapottal és az hozzárendelési módszerrel. Miután a metódus visszaadja az új SensitivityLabel objektumot, adja hozzá a szükséges jelzési értékeket a SensitivityLabel.getContentMarkTypes által visszaadott listán keresztül.
Az alábbi példa manuálisan kiválasztott címkét ad hozzá, amely lábjegyzet és vízjel jelzéssel rendelkezik, majd PPTX formátumban menti az eredményt:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat, SensitivityLabelAssignmentType, SensitivityLabelContentType
from java.util import UUID
presentation = Presentation("presentation.pptx")
try:
sensitivity_labels = presentation.getSensitivityLabels()
label_identifier = "{11111111-2222-3333-4444-555555555555}"
site_identifier = UUID.fromString("aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee")
is_enabled = True
assignment_method = SensitivityLabelAssignmentType.Privileged
sensitivity_label = sensitivity_labels.add(label_identifier, site_identifier, is_enabled, assignment_method)
sensitivity_label.getContentMarkTypes().addItem(jpype.JInt(SensitivityLabelContentType.Footer))
sensitivity_label.getContentMarkTypes().addItem(jpype.JInt(SensitivityLabelContentType.Watermark))
presentation.save("presentation_with_label.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
Érzékenységi címke frissítése
A SensitivityLabel értékek olvashatók/írhatók, kivéve, hogy a SensitivityLabel.getContentMarkTypes által visszaadott listát a lista műveleteken keresztül módosítjuk. A szükséges címke megtalálása után frissítheti annak azonosítóját, helyazonosítóját, engedélyezett állapotát, hozzárendelési módját, eltávolítási állapotát és a tartalomjelzési típusokat. Mentse el a prezentációt a változások rögzítéséhez.
Az alábbi példa frissíti az első címke engedélyezett állapotát és hozzárendelési módját:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat, SensitivityLabelAssignmentType
presentation = Presentation("presentation.pptx")
try:
sensitivity_labels = presentation.getSensitivityLabels()
if sensitivity_labels.getCount() > 0:
sensitivity_label = sensitivity_labels.get_Item(0)
sensitivity_label.setEnabled(True)
sensitivity_label.setAssignmentMethodType(SensitivityLabelAssignmentType.Privileged)
presentation.save("presentation_with_updated_label.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
Érzékenységi címke megjelölése eltávolítottként
Az eltávolított címke tényének megőrzéséhez találja meg a címkét, és hívja a SensitivityLabel.setRemoved metódust True értékkel. Ez megőrzi a címke bejegyzést, miközben rögzíti az eltávolított állapotát. Ha ehelyett egy bejegyzést szeretne törölni a modern gyűjteményből, használja a SensitivityLabelCollection.removeAt metódust; a SensitivityLabelCollection.clear segítségével törölheti az összes bejegyzést.
Az alábbi példa egy adott címkét megjelöl eltávolítottként, és elmenti a frissített prezentációt:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat
presentation = Presentation("presentation.pptx")
try:
sensitivity_labels = presentation.getSensitivityLabels()
target_label_identifier = "{11111111-2222-3333-4444-555555555555}"
for sensitivity_label in sensitivity_labels:
is_target_label = str(sensitivity_label.getId()).casefold() == target_label_identifier.casefold()
if is_target_label:
sensitivity_label.setRemoved(True)
break
presentation.save("presentation_with_removed_label.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
Örökölt MIP érzékenységi címkék olvasása és migrálása
A régebbi, MIP-alapú munkafolyamatok a modern címke gyűjtemény helyett egyéni dokumentumtulajdonságokban tárolhatják az érzékenységi címke metaadatait. Olvassa be ezeket a metaadatokat a DocumentProperties.getSensitivityLabels segítségével. A metódus feldolgozza az örökölt egyéni tulajdonságokat, és egy SensitivityLabel objektumok tömbjét adja vissza.
A metaadatok migrálásához adja hozzá az egyes visszakapott címkéket a modern SensitivityLabelCollection gyűjteményhez a SensitivityLabelCollection.add segítségével. Mivel egy ismétlődő címkeazonosító hozzáadása kivételt vált ki, a példa a másolás előtt ellenőrzi a célgyűjteményt. További validációt is beépíthet, hogy megerősítse, minden örökölt címke még létezik a jelenlegi Purview szabályzatban.
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat
presentation = Presentation("presentation_with_legacy_labels.pptx")
try:
legacy_sensitivity_labels = presentation.getDocumentProperties().getSensitivityLabels()
modern_sensitivity_labels = presentation.getSensitivityLabels()
for legacy_sensitivity_label in legacy_sensitivity_labels:
label_already_exists = False
for modern_sensitivity_label in modern_sensitivity_labels:
label_already_exists = str(modern_sensitivity_label.getId()).casefold() == str(legacy_sensitivity_label.getId()).casefold()
if label_already_exists:
break
if not label_already_exists:
modern_sensitivity_labels.add(legacy_sensitivity_label)
presentation.save("presentation_with_modern_labels.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
A migráció átmásolja a feldolgozott címke objektumokat a modern gyűjteménybe. Nem szükséges az összes egyéni dokumentumtulajdonság törlése, így a nem kapcsolódó dokumentum metaadatok érintetlenek maradnak. Használja a Presentation.save metódust a SaveFormat.Pptx paraméterrel, hogy a modern címke metaadatokat PPTX fájlba írja.
GYIK
A tartalomjelzés típus hozzáadása látható fejlécet, lábjegyet vagy vízjelet hoz létre a diákon?
Nincs. A SensitivityLabel.getContentMarkTypes által visszaadott listához hozzáadott értékek csak a címkéhez kapcsolódó jelzéseket írják le. Nem hoznak létre látható szöveget vagy alakzatot a prezentációban. Ha a munkafolyamatnak meg kell jelenítenie ezeket a jelzéseket, adja hozzá a megfelelő diatartalmat külön.
Mi a különbség egy címke eltávolítottként való megjelölése és a gyűjteményből való törlése között?
A SensitivityLabel.setRemoved True értékkel történő hívása megtartja a címke bejegyzést és rögzíti az eltávolított állapotát. A SensitivityLabelCollection.removeAt hívása törli a bejegyzést a modern gyűjteményből. Válassza azt a műveletet, amely megfelel a szervezet metaadatmegőrzési követelményeinek.
Lehet egy prezentációban egyszerre örökölt MIP metaadat és modern érzékenységi címke is?
Igen. Az örökölt címkék maradhatnak az egyéni dokumentumtulajdonságokban, míg a modern címkék a Presentation.getSensitivityLabels segítségével érhetők el. Használja a DocumentProperties.getSensitivityLabels metódust az örökölt metaadatok beolvasásához, és migrálja csak azokat a címkéket, amelyek még nem szerepelnek a modern gyűjteményben.
Mi történik, ha egy azonosítóval rendelkező címkét többször adják hozzá?
A SensitivityLabelCollection.add kivételt dob, ha a gyűjtemény már tartalmaz egy ugyanazzal az azonosítóval rendelkező címkét. A címkék hozzáadása vagy migrálása előtt ellenőrizze a SensitivityLabel.getId által visszaadott meglévő értékeket.
Melyik kimeneti formátumot kell használni a frissített érzékenységi címkék megőrzéséhez?
Mentse a prezentációt PPTX formátumban a Presentation.save SaveFormat.Pptx paraméterrel, ahogyan a fenti példákban látható.