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.
Diese Übersicht konzentriert sich auf die Erneute Veröffentlichung im MIP SDK. Eine erneute Veröffentlichung ist erforderlich, wenn eine Anwendung es einem Benutzer ermöglichen muss, die Datei zu bearbeiten, aber die ursprünglichen Veröffentlichungslizenzinformationen über Besitzer, Rechte, Inhaltsschlüssel usw. beibehalten müssen.
Das Muster könnte etwa so aussehen:
- Ein Benutzer öffnet ein geschütztes Dokument zur Bearbeitung.
- Der Benutzer darf die Datei nur bearbeiten, wenn er über die entsprechenden Rechte verfügt.
- Der Benutzer bearbeitet das Dokument und speichert es anschließend.
Der Pseudocode des MIP SDK zur Erfüllung dieser Aufgabe könnte wie folgt aussehen:
- Erstellen Sie einen
mip::FileHandler, der auf die Zieldatei zeigt. - Speichern Sie die
mip::ProtectionHandler, die von dermip::FileHandler-Methode vonGetProtection()ausgesetzt sind. - Prüfen Sie, ob der Benutzer Bearbeitungsrechte hat, indem Sie die Methode
AccessCheck()aufrufen. - Verwenden Sie
mip::FileHandlersGetDecryptedTemporaryFileAsync()oderGetDecryptedTemporaryStreamAsync(), um eine vorläufige entschlüsselte Ausgabe zu erhalten. - Bearbeiten Sie die temporäre Datei oder den Streaminhalt, und speichern Sie sie.
- Erstellen Sie eine neue
mip::FileHandler-Instanz, die auf die temporäre Datei zeigt, und verwenden Sie dieSetProtection()-Methode, wobei Sie die gespeichertenmip::ProtectionHandlerals Parameter angeben. - Führen Sie für die Änderung einen Commit aus.
Unter Verwendung des mip::ProtectionHandler aus der ursprünglichen Datei werden der Besitzer, die Inhalts-ID und der Inhaltsschlüssel im bearbeiteten Dokument beibehalten. Für dieses Szenario der Neuveröffentlichung muss die Anwendung einen Verweis auf das Original mip::ProtectionHandler beibehalten.
Implementierung
Wie bereits erwähnt, verfügt die Klasse mip::FileHandler über Methoden zum Lesen, Schreiben und Entfernen von Etiketten und Schutzinformationen. Die vollständige Liste der unterstützten Vorgänge finden Sie in der Referenz für mip::FileHandler.
Dieses Szenario verwendet die folgenden Methoden von mip::FileHandler:
GetProtection()CommitAsync()GetDecryptedTemporaryFileAsync()SetProtection()
Das Szenario nutzt auch mip::ProtectionHandler, was die Funktionen zum Ver- und Entschlüsseln geschützter Streams und Puffer, zur Durchführung von Zugriffsprüfungen, zum Abrufen der Veröffentlichungslizenz und zum Abrufen von Attributen aus den geschützten Informationen zur Verfügung stellt. Die Methode AccessCheck() wird verwendet, um zu überprüfen, ob der Benutzer das Recht hat, die Datei zu bearbeiten.
Um dieses Reprotection-Szenario erfolgreich abzuschließen, überprüfen Sie die Schnellstarts unter "Nächste Schritte" und stellen Sie sicher, dass die Anwendung erstellt wird und erfolgreich Etiketten auflisten kann.
Erstellen eines Protection Handlers aus der Datei und Entschlüsseln der Datei
mip::ProtectionHandler stellt die Funktionen zum Ver- und Entschlüsseln geschützter Streams und Puffer, zur Durchführung von Zugriffsprüfungen, zum Abrufen der Veröffentlichungslizenz und zum Abrufen von Attributen aus den geschützten Informationen zur Verfügung.
mip::ProtectionHandler Objekte werden erstellt, indem entweder ein ProtectionDescriptor oder eine serialisierte Veröffentlichungslizenz bereitgestellt wird. Für diesen Anwendungsfall wird die Veröffentlichungslizenz beim Entschlüsseln bereits geschützter Inhalte oder beim Schützen von Inhalten verwendet, in denen die Lizenz bereits erstellt wurde.
mip::FileHandler stellt eine Methode mit dem Namen GetProtection() bereit, die mip::ProtectionHandler aus der Datei abruft, die mit der mip::FileHandler verbunden ist. Sobald das mip::ProtectionHandler-Objekt abgerufen ist, kann es dazu verwendet werden, die Zugriffsrechte des Benutzers für die Datei zu überprüfen, die Datei zu entschlüsseln und sie später zu verschlüsseln, sobald sie bearbeitet wird.
mip::ProtectionHandlers AccessCheck() wird verwendet, um zu überprüfen, ob der Benutzer ein bestimmtes Recht auf die Datei hat und gibt je nach Ergebnis eine boolesche Antwort zurück. Um z. B. zu überprüfen, ob der Benutzer Bearbeitungsrechte hat, rufen Sie die Methode mit dem Wert "EDIT" auf. Wenn das Ergebnis wahr ist, erlauben Sie dem Benutzer, die Datei zu bearbeiten. Sobald das Recht EDIT verifiziert ist, verwenden Sie mip::FileHandler's GetDecryptedTemporaryFileAsync(), um die vorübergehend entschlüsselte Datei abzurufen.
Weitere Informationen finden Sie unter Einschränken des Zugriffs auf Inhalte mithilfe von Vertraulichkeitsbezeichnungen zum Anwenden der Verschlüsselung.
Wichtig
Zugangskontrollen und deren Erzwingung sind allein Sache des Anwendungsentwicklers. Ein Benutzer mit VIEW-Rechten kann die geschützten Informationen entschlüsseln. Es liegt an der Anwendung, die Gruppe von Rechten zu überprüfen, die dem Benutzer gewährt wurden, und diese Rechte durch Informationsschutzmaßnahmen durchzusetzen, z. B. das Kopieren, Bearbeiten oder Erstellen von Screenshots zu verhindern. Werden die Schutzmaßnahmen nicht ordnungsgemäß durchgeführt, kann dies zur Preisgabe sensibler Informationen führen.
Speichern und veröffentlichen Sie die bearbeitete Datei durch Anwendung von Protection
Die Datei kann bearbeitet werden, nachdem die Datei entschlüsselt wurde. Sobald der Bearbeitungsvorgang abgeschlossen ist, können die Änderungen bestätigt werden. Erstellen Sie ein IFileHandler Objekt mithilfe der temporären Datei für die Verwaltung der festgeschriebenen Datei. Die temporäre Datei kann dann mit dem IProtectionHandler-Objekt geschützt werden, das aus der ursprünglichen Datei abgerufen wurde.
Erneute Veröffentlichung im Offlinemodus
Die erneute Veröffentlichung kann offline erfolgen, wenn der Veröffentlichungslizenzcache verfügbar ist. Wenn die Anwendung die Vorlagen und Veröffentlichungslizenzdaten zuvor über die Offlineveröffentlichung zwischengespeichert hat, erfordert der workflow für die erneute Veröffentlichung keine aktive Verbindung mit dem Rights Management-Dienst.
Dies ist in Szenarien hilfreich, in denen:
- Die Anwendung muss in zeitweilig verbundenen Umgebungen funktionieren.
- Große Batchvorgänge müssen ohne Dienstaufrufe pro Dokument erneut veröffentlicht werden.
- Eine bessere Leistung soll durch die Vermeidung von Dienstaufrufen erreicht werden.
Stellen Sie sicher, dass die Offlineveröffentlichung aktiviert ist und Vorlagen zwischengespeichert werden, bevor Sie versuchen, die Veröffentlichung offline erneut zu veröffentlichen. Details zur Einrichtung finden Sie unter "Offlineveröffentlichung ".