Zpracování souborů e-mailových zpráv v sadě File SDK

Sada MIP SDK podporuje dešifrování a šifrování e-mailových zpráv. Sada SDK podporuje soubory .msg vygenerované outlookem nebo Exchangem i soubory .rpmsg, i když mírně odlišnými metodami.

Poznámka:

Od verze MIP SDK 1.17 se podporují .eml soubory. Zpracování je v závislosti na formátu kontejneru podobné jako u .msg pro scénáře označování/ochrany a jako u .rpmsg pro scénáře kontroly.

Mezi běžné případy použití pro tento scénář patří:

  • Dešifrování pošty a příloh pro kontrolu ochrany před únikem informací
  • Publikování chráněných zpráv přímo z obchodních aplikací
  • Dešifrujte, upravujte a znovu chraňte zprávy během přenosu.
  • Použití popisků na e-maily ze služeb DLP nebo služeb poštovní brány

Prohlášení o podpoře souborů MSG

Sada MIP SDK podporuje aplikaci ochrany a odebrání souborů MSG. Vzhledem k nejrůznějším typům kódování a proměnným ve formátu v průběhu let není možné zaručit, že sada MIP SDK může odebrat ochranu ze všech souborů MSG. Následující část popisuje podporu pro soubory MSG z různých zdrojů.

  • Odebrání ochrany ze souborů MSG chráněných sadou MIP SDK je plně podporované.
  • Odebrání ochrany ze souborů MSG vytvořených aktuálně podporovanými verzemi klienta Outlooku je plně podporováno.
  • Odebrání ochrany ze souborů MSG vytvořených verzemi mimo podporu klienta Outlooku je podporováno na základě maximálního úsilí.
  • Opětovná ochrana souborů MSG není u chráněných popisků k dispozici. Uživatelé musí před opětovnou ochranou souboru jiným popiskem nejprve výslovně zrušit ochranu a odebrat chráněný popisek.

Označování souborů MSG

Sada MIP SDK podporuje čtení a zápis popisků u souborů MSG. Podřízené přílohy nedědí štítek, ale dědí nastavení ochrany. Další podrobnosti najdete v článku Operace popisování a ochrany v sadě File SDK pro soubory .msg.

Operace popisování a ochrany v sadě File SDK pro soubory .msg

Sada File SDK podporuje operace označování a ochrany pro soubory .msg způsobem identickým s jakýmkoli jiným typem souboru, s tím rozdílem, že sada SDK potřebuje aplikaci k povolení příznaku funkce MSG.

Jak bylo popsáno dříve, vytvoření instance FileEngine vyžaduje objekt nastavení, FileEngineSettings. FileEngineSettings lze použít k předání parametrů pro vlastní nastavení tak, aby vyhovovala konkrétním potřebám aplikace. Aby sada MIP SDK mohla zpracovávat soubory MSG, používá se vlastnost CustomSettings objektu FileEngineSettings k nastavení příznaku enable_msg_file_type, který povoluje zpracování souborů .msg.

Pokud jste vytvořili FileEngineSettings objekt s názvem engineSettings, nastavili byste tuto vlastnost v .NET následujícím způsobem:

engineSettings.CustomSettings = new List<KeyValuePair<string, string>>();
engineSettings.CustomSettings.Add(new KeyValuePair<string, string>("enable_msg_file_type", "true"));

Pseudokód .msg operací ochrany souborů může vypadat takto:

  • Nastavte příznak enable_msg_file_type v mip::FileEngineSettings a přidejte mip::FileEngine do mip::FileProfile.
  • K načtení seznamu štítků pro uživatele použijte FileEngine.
  • Konstrukce mip::FileHandler , která odkazuje na soubor, který má být označen.
  • Vyberte štítek a pomocí metody SetLabel prvku mip::FileHandler jej použijte.

Informace o tom, jak vypsat štítky, naleznete v tématu Rychlý start: Výpis štítků.

Změna výchozího chování zpracování příloh

Sada File SDK se ve výchozím nastavení pokusí zpracovat všechny přílohy, které jsou součástí souboru MSG, nebo soubor message.rpmsg při použití kontrolních rozhraní API. Ve výchozím nastavení se dešifrují pouze položky kořenové úrovně a první úroveň příloh.

Chcete-li toto chování upravit, lze použít vlastní nastavení container_decryption_option. V jazyce C++ se zobrazí prostřednictvím výčtu mip::ContainerDecryptionOption.

Název možnosti Popis
All Dešifruje soubor MSG a přílohy. Pokud je příloha msG, rekurzivně dešifruje msG a její přílohy. Před vyvoláním se vrátí maximálně deset úrovní. mip::BadInputError("Max depth reached on nested msg attachments")
Default Stejné jako Msg.
Msg Dešifruje MSG a přílohy první úrovně. Nerekurzivně dešifruje připojené soubory MSG.
Top Dešifrujte pouze soubor MSG a nešifrujte přílohy.

Následující příklad ukazuje, jak nastavit aplikaci v .NET pro dešifrování pouze kořenového souboru MSG.

engineSettings.CustomSettings.Add(new KeyValuePair<string, string>("container_decryption_option", "Top"));

A v jazyce C++:

vector<pair<string, string>> customSettings;
customSettings.emplace_back(mip::GetCustomSettingContainerDecryptionOption(),
        mip::ContainerDecryptionOptionString(mip::ContainerDecryptionOption::Top));
engineSettings.SetCustomSettings(customSettings);

Operace sady File SDK pro soubory .rpmsg

Sada MIP SDK zveřejňuje kontrolní funkci, která může dešifrovat vložený soubor message.rpmsg a prezentovat sadu bajtů streamů jako výstup. Je na příjemci sady SDK, aby extrahovali soubor message.rpmsg a předali ho do kontrolního rozhraní API. Varianty tohoto názvu souboru existují pro scénáře šifrování zpráv Purview a rozhraní API také přijme soubory message_v2, v3 nebo v4.

Důležité

Rozhraní API pro kontrolu neposkytuje výstup, který bude mít za následek použitelný soubor, ani neumožňuje znovu chránit vstupní soubor. Výstupem jsou datové proudy bajtů, které pak vaše aplikace může dále zpracovat. Sada MIP SDK nepodporuje opětovné vytvoření souborů MSG ze souborů message.rpmsg .

Ve většině případů potřebuje služba ochrany před únikem informací získat přílohy a bajty prostého textu ze zprávy, aby bylo možné kontrolovat a vyhodnocovat zásady ochrany před únikem informací. Rozhraní API inspect přijímá jako vstup message.rpmsg a jako výstup vrací proudy bajtů. Tyto bajtové datové proudy obsahují bajty prostého textu zprávy a přílohy. Je na vývojáři aplikace, aby tyto streamy zvládl a udělal s nimi něco užitečného (prověřovat, rekurzivně dešifrovat atd.).

Rozhraní Inspect API se implementuje prostřednictvím třídy, mip::FileInspectorkterá zveřejňuje operace pro kontrolu podporovaných typů souborů. mip::MsgInspector který rozšiřuje mip::FileInspector, zveřejňuje dešifrovací operace specifické pro formát souboru rpmsg. Sada MIP SDK nepodporuje žádné scénáře publikování souborů message.rpmsg . Kromě toho FileHandler::RemoveProtection() rozhraní API nepodporuje soubory message.rpmsg. Soubory Message.rpmsg lze dešifrovat pouze pro kontrolu a nebudou výstupem platného použitelného souboru. Pokud vaše aplikace vyžaduje výstup souboru, musíte předat soubor MSG a odebrat ochranu z daného objektu.

mip::MsgInspector třída zveřejňuje následující členy:

public const std::vector<uint8_t>& GetBody()
public BodyType GetBodyType() const
public BodyType GetBodyType() const
public InspectorType GetInspectorType() const
public std::shared_ptr<Stream> GetFileStream() const

Další informace naleznete v sadě Microsoft Information Protection (MIP) SDK pro jazyk C++: Referenční informace.

Další kroky