Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die mip::Consent Enumerationsklasse implementiert einen einfach zu verwendenden Ansatz, mit dem Anwendungsentwickler basierend auf dem Endpunkt, auf den vom SDK zugegriffen wird, eine benutzerdefinierte Zustimmungserfahrung bereitstellen kann. Die Benachrichtigung kann einen Nutzer darüber informieren, welche Daten erfasst werden, wie die Löschung der Daten veranlasst werden kann oder welche anderen Informationen gesetzlich oder durch Compliance-Richtlinien vorgeschrieben sind. Sobald der Benutzer seine Zustimmung erteilt hat, kann die Anwendung fortgesetzt werden. Dieser Delegat wird nur aufgerufen, wenn versucht wird, auf Active Directory Rights Management Services (AD RMS) zuzugreifen. Er wird nicht aufgerufen, wenn er auf Clouddienste zugreift. Wenn Ihre Anwendung AD RMS nicht unterstützt, können Sie einen Delegaten implementieren, der immer Consent.AcceptAlways zurückgibt.
Implementation
Die Zustimmung wird implementiert, indem die Basisklasse mip::Consent erweitert und GetUserConsent implementiert wird, sodass einer der Enum-Werte von mip::Consent zurückgegeben wird.
Das abgeleitete mip::Consent Objekt wird an den mip::FileProfile::Settingsmip::ProtectionProfile::Settings Konstruktor übergeben.
Wenn ein Benutzer einen Vorgang ausführt, der die Zustimmung erfordern würde, ruft das SDK die GetUserConsent Methode auf und übergibt die Ziel-URL als Parameter. In dieser Methode würde man die Anzeige der erforderlichen Informationen für den Benutzer implementieren, sodass er entscheiden kann, ob er der Nutzung des Diensts zustimmen oder nicht.
Zustimmungsoptionen
- AcceptAlways: Stimmen Sie zu, und erinnern Sie sich an die Entscheidung.
- Akzeptieren: Einmal zustimmen.
- Ablehnen: Stimmen Sie nicht zu.
Wenn das SDK die Zustimmung des Benutzers mit dieser Methode anfordert, sollte die Clientanwendung die URL für den Benutzer darstellen. Clientanwendungen sollten einige Mittel zum Einholen der Benutzerzustimmung bereitstellen und die entsprechende Zustimmungsenume zurückgeben, die der Entscheidung des Benutzers entspricht.
Beispielimplementierung
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
Wenn das SDK eine Einwilligung erfordert, wird die Methode GetUserConsentvom SDK aufgerufen, wobei die URL als Parameter übergeben wird. Im folgenden Beispiel wird der Benutzer benachrichtigt, dass das SDK eine Verbindung mit dieser bereitgestellten URL herstellt und dem Benutzer eine Option in der Befehlszeile zur Verfügung stellt. Abhängig von der Wahl des Benutzers erteilt oder verweigert der Benutzer seine Einwilligung, und diese Information wird an das SDK weitergegeben. Wenn der Benutzer die Zustimmung ablehnt, löst die Anwendung eine Ausnahme aus, und der Schutzdienst wird nicht aufgerufen.
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;
}
}
Beim Testen oder Entwickeln oder bei der Verwendung nur der cloudbasierten Dienste kann eine Basis ConsentDelegate implementiert werden.
Consent ConsentDelegateImpl::GetUserConsent(const string& url) {
return Consent::AcceptAlways;
}
Im Produktivcode kann es jedoch je nach regionalen oder geschäftlichen Anforderungen und Vorschriften erforderlich sein, dem Benutzer eine Wahlmöglichkeit zur Einwilligung anzuzeigen.