Microsoft Information Protection SDK – Hozzájárulás
Az mip::Consent
enum osztály egy könnyen használható megközelítést implementál, amely lehetővé teszi az alkalmazásfejlesztők számára, hogy egyéni hozzájárulási élményt nyújtsanak az SDK által elért végpont alapján. Az értesítés tájékoztathatja a felhasználót az összegyűjtött adatokról, az adatok eltávolításának módjáról, illetve a jogszabályok vagy megfelelőségi szabályzatok által megkövetelt egyéb információkról. Miután a felhasználó megadta a hozzájárulást, az alkalmazás folytathatja a műveletet. Ezt a meghatalmazottat csak az Active Directory Rights Management Services (AD RMS) elérésekor hívja meg a rendszer. A felhőszolgáltatások elérésekor nem hívják meg. Ha az alkalmazás nem támogatja az AD RMS-t, implementálhat egy mindig visszaadott meghatalmazottat Consent.AcceptAlways
.
Implementáció
A hozzájárulás az alaposztály kibővítésével és az mip::Consent
enumerálási értékek egyikének mip::Consent
visszaadásával GetUserConsent
valósul meg.
A származtatott mip::Consent
objektum át lesz adva a konstruktornak vagy mip::ProtectionProfile::Settings
a mip::FileProfile::Settings
konstruktornak.
Amikor egy felhasználó olyan műveletet hajt végre, amely hozzájárulást igényel, az SDK meghívja a GetUserConsent
metódust, és paraméterként adja át a cél URL-címet. Ebben a módszerben valósítja meg a felhasználó számára a szükséges információk megjelenítését, így eldöntheti, hogy hozzájárul-e a szolgáltatás használatához.
Hozzájárulási beállítások
- AcceptAlways: Hozzájárulás és a döntés megjegyzése.
- Elfogadás: Hozzájárulás egyszer.
- Elutasítás: Ne járul hozzá.
Amikor az SDK ehhez a módszerhez felhasználói hozzájárulást kér, az ügyfélalkalmazásnak meg kell jelenítenie az URL-címet a felhasználónak. Az ügyfélalkalmazásoknak biztosítaniuk kell a felhasználói hozzájárulás beszerzésének valamilyen módját, és vissza kell adniuk a felhasználó döntésének megfelelő hozzájárulási számot.
Minta implementáció
consent_delegate_impl.h
class ConsentDelegateImpl final : public mip::ConsentDelegate {
public:
ConsentDelegateImpl() = default;
virtual mip::Consent GetUserConsent(const std::string& url) override;
};
consent_delegate_impl.cpp
Ha az SDK hozzájárulást igényel, az GetUserConsent
SDK meghívja a metódust, és paraméterként adja át az URL-címet. Az alábbi mintában a felhasználó értesítést kap arról, hogy az SDK csatlakozik a megadott URL-címhez, és lehetőséget biztosít a felhasználónak a parancssorban. A felhasználó döntése alapján a felhasználó elfogadja vagy elutasítja a hozzájárulást, és azt átadja az SDK-nak. Ha a felhasználó elutasítja a hozzájárulást, az alkalmazás kivételt fog eredményezni, és nem történik hívás a védelmi szolgáltatás felé.
Consent ConsentDelegateImpl::GetUserConsent(const string& url) {
//Print the consent URL, ask user to choose
std::cout << "SDK will connect to: " << url << std::endl;
std::cout << "1) Accept Always" << std::endl;
std::cout << "2) Accept" << std::endl;
std::cout << "3) Reject" << std::endl;
std::cout << "Select an option: ";
char input;
std::cin >> input;
switch (input)
{
case '1':
return Consent::AcceptAlways;
break;
case '2':
return Consent::Accept;
break;
case '3':
return Consent::Reject;
break;
default:
return Consent::Reject;
}
}
Tesztelés vagy fejlesztés során, vagy ha csak a felhőalapú szolgáltatásokat használja, egy alapszintű ConsentDelegate
implementálható.
Consent ConsentDelegateImpl::GetUserConsent(const string& url) {
return Consent::AcceptAlways;
}
Az éles kódban azonban előfordulhat, hogy a felhasználónak meg kell adnia egy hozzájárulási lehetőséget a regionális vagy üzleti követelményektől és előírásoktól függően.
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: