Microsoft Information Protection SDK – Protection SDK motorfogalmak
Implementáció: Védelmi motor hozzáadása
A Fájl SDK-ban az mip::ProtectionProfile
osztály az összes SDK-művelet gyökérosztálya. Miután létrehozta a profilt, hozzáadhatunk egy motort a profilhoz.
Az alábbi példa bemutatja, hogy egyetlen motort használnak egyetlen hitelesített felhasználóhoz.
Megvalósítás: Védelmi motor létrehozása Gépház
A profilhoz hasonlóan a motorhoz egy beállításobjektum is szükséges. mip::ProtectionEngine::Settings
Ez az objektum tárolja az egyedi motorazonosítót, a hibakereséshez vagy telemetriához használható testreszabható ügyféladatokat, és opcionálisan a területi beállításokat.
Itt létrehozunk egy ProtectionEngine::Settings
motor nevű objektumot Gépház.
ProtectionEngine::Settings engineSettings("UniqueID", "");
Megjegyzés:
Ha ezzel a módszerrel hozza létre a védelmi beállítások objektumát, manuálisan is be kell állítania az identitást a ProtectionEngine-en Gépház vagy a célfelhő-környezeten keresztül setIdentity()
setCloud()
.
Ajánlott eljárásként az első paraméternek, az azonosítónak olyannak kell lennie, amely lehetővé teszi a motor számára, hogy könnyen kapcsolódjon a társított felhasználóhoz vagy egy mip::Identity
objektumhoz. A beállítások inicializálása a következővel mip::Identity
:
ProtectionEngine::Settings engineSettings(mip::Identity("Bob@Contoso.com", "");
A motor létrehozásakor Gépház így fontos, hogy egy egyedi motorazonosítót is explicit módon állítson be a következő módon:
engineSettings.SetEngineId(engineId);
A felhasználónév vagy e-mail használatával biztosítható, hogy a felhasználó minden alkalommal betöltse ugyanazt a motort, amikor a felhasználó használja a szolgáltatást vagy az alkalmazást.
Implementáció: A védelmi motor hozzáadása
A motor hozzáadásához visszatérünk a profil betöltéséhez használt jövőbeli/ígéretes mintához. Ahelyett, hogy létrehoznánk az ígéretet mip::ProtectionProfile
, használjuk mip::ProtectionEngine
.
//auto profile will be std::shared_ptr<mip::ProtectionProfile>
auto profile = profileFuture.get();
//Create the ProtectionEngine::Settings object
ProtectionEngine::Settings engineSettings("UniqueID", "");
//Create a promise for std::shared_ptr<mip::ProtectionEngine>
auto enginePromise = std::make_shared<std::promise<std::shared_ptr<mip::ProtectionEngine>>>();
//Instantiate the future from the promise
auto engineFuture = enginePromise->get_future();
//Add the engine using AddEngineAsync, passing in the engine settings and the promise
profile->AddEngineAsync(engineSettings, enginePromise);
//get the future value and store in std::shared_ptr<mip::ProtectionEngine>
auto engine = engineFuture.get();
A fenti kód végeredménye, hogy sikeresen hozzáadtunk egy motort a hitelesített felhasználóhoz a profilhoz.
Implementáció: Listasablonok
A hozzáadott motor használatával mostantól a hitelesített felhasználó számára elérhető összes bizalmassági sablont listázhatja a hívással engine->GetTemplatesAsync()
.
GetTemplatesAsync()
lekéri a sablonok azonosítóinak listáját. Az eredményt a rendszer a következő vektorban std::shared_ptr<std::string>
tárolja: .
Megvalósítás: ListSensitivityTemplates()
auto loadPromise = std::make_shared<std::promise<shared_ptr<vector<string>>>>();
std::future<std::shared_ptr<std::vector<std::string>>> loadFuture = loadPromise->get_future();
mEngine->GetTemplatesAsync(engineObserver, loadPromise);
auto templates = loadFuture.get();
Megvalósítás: A sablonazonosítók nyomtatása
//Iterate through all template IDs in the vector
for (const auto& temp : *templates) {
cout << "Template:" << "\n\tId: " << temp << endl;
}
A nevek nyomtatásával egyszerűen megmutathatjuk, hogy sikeresen lekértük a szabályzatot a szolgáltatásból, és sikerült lekérni a sablonokat. A sablon alkalmazásához a sablonazonosítóra van szükség.
A sablonok címkékhez való leképezése csak a Policy SDK-val végezhető el a következő eredmény vizsgálatával ComputeActions()
: .
Következő lépések
Most, hogy betöltötte a profilt, hozzáadta a motort, és sablonokkal rendelkezünk, hozzáadhatunk egy kezelőt, amely elkezdi olvasni, írni vagy eltávolítani a sablonokat a fájlokból. Lásd a Védelmi kezelővel kapcsolatos fogalmakat.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: