Zum Hauptinhalt springen
Version: 4.1 (2026 H2)

Microsoft Information Protection (MIP)

Diese Dokumentfunktion ermöglicht es, beim Generieren von Word-, PowerPoint- und Excel-Dokumenten Vertraulichkeitsbezeichnungen (Sensitivity Labels) von Microsoft Information Protection (Microsoft Purview) anzuwenden. Der Benutzer wählt das Label beim Generieren im Eingabeformular aus; primedocs wendet die zugehörigen visuellen Markierungen (Kopf-/Fusszeilen, Wasserzeichen) und – falls aktiviert – den Rechteschutz an.

Voraussetzungen
  • Eine Azure-AD-App-Registrierung, deren Client-ID in ApplicationId hinterlegt wird (für die MIP-SDK-Operationen).
  • Für den Rechteschutz (EnableProtection) muss zusätzlich der Connected Service _System.MIP.Protection konfiguriert sein.
  • Die Auswahl eines Labels durch den Benutzer kann eine vorgängige Anmeldung am Connected Service erfordern.
  • Auf dem Server (bzw. dem System, das die MIP-Operationen ausführt) muss das Visual C++ Redistributable installiert sein, da das MIP-SDK dieses voraussetzt.
  • Das System, das die MIP-Operationen ausführt, benötigt Internetzugriff auf die MIP-Dienste. Beim Einsatz eines Proxys auf dem Server ist eine zusätzliche Konfiguration nötig, siehe Netzwerkzugriff und Proxy.

Grundaufbau​

Die Konfiguration erfolgt im Vorlageneditor unter Dokumentfunktionen. Die Einstellungen können entweder direkt (lokal) oder über eine Globale Konfiguration referenziert werden – eine Mischung beider Varianten ist nicht zulässig.

<MipConfiguration>
<ApplicationId>00000000-0000-0000-0000-000000000000</ApplicationId>
<EnableProtection>true</EnableProtection>
</MipConfiguration>

Konfigurationselemente​

ElementPflichtBeschreibung
ApplicationIderforderlichClient-ID der Azure-AD-App-Registrierung, die für die MIP-SDK-Operationen verwendet wird. Bei lokaler Konfiguration muss ApplicationId gesetzt sein; wird stattdessen über GlobalMipSettings referenziert, muss der globale Eintrag die ApplicationId liefern.
EnableProtectionoptionaltrue, wenn Labels mit Rechteschutz (Rights Management) unterstützt werden sollen. Erfordert den Connected Service _System.MIP.Protection.
OverrideServiceUrloptionalÜberschreibt den MIP-Service-Endpunkt (z.B. für lokale Entwicklung).
GlobalMipSettingsoptionalReferenz auf eine globale MIP-Konfiguration über das Attribut Key. Bei Verwendung werden alle Einstellungen aus dem referenzierten globalen Eintrag geladen; darf nicht mit lokalen Einstellungen kombiniert werden.

Globale MIP-Einstellungen wiederverwenden​

Wird dieselbe MIP-Konfiguration in mehreren Vorlagen benötigt, lässt sie sich als globale Konfiguration vom Typ MipGlobalSettings zentral pflegen und über GlobalMipSettings referenzieren:

<MipConfiguration>
<GlobalMipSettings Key="StandardMip" />
</MipConfiguration>
info

Die Auswahl der Vertraulichkeitsbezeichnung erscheint dem Benutzer als Feld im Generierungsformular. Welche Labels verfügbar sind, ergibt sich aus der MIP-/Purview-Konfiguration des Mandanten.

Serverseitige Anwendung (Dark Processing)​

Vertraulichkeitsbezeichnungen werden nicht nur im Office-Client, sondern auch serverseitig bei der Dokumentgenerierung angewendet — insbesondere beim Document Creation Server (DCS) und bei der automatisierten Generierung über Connect («Dark Processing»), ohne dass ein lokales Office-Add-In beteiligt ist.

Die Anwendung erfolgt als letzter Schritt der Dokumentpipeline direkt auf dem Dokument-Bytestream. Grund: Ist Rechteschutz aktiv (EnableProtection), verschlüsselt MIP das Dokument, wodurch es kein reines Office-Open-XML mehr ist und nicht weiterverarbeitet werden kann. Unterstützt werden Word, PowerPoint und Excel.

Authentifizierung​

Serverseitig stehen keine interaktiven Office-Anmeldungen zur Verfügung. Die Anmeldung läuft daher über Connected Services:

  • Das OAuth-Access-Token des Benutzers wird als Connected Service serverseitig gespeichert und pro Benutzer entschlüsselt verwendet. Die Benutzeridentität wird aus dem Token (JWT) ermittelt.
  • Pro Benutzer wird ein isolierter MIP-Cache verwendet (relevant für Terminalserver-/Citrix-Umgebungen).
  • Ist der benötigte Connected Service nicht angemeldet, wird die Label-Auswahl blockiert (Anmelde-Hinweis). Bei aktiviertem EnableProtection müssen beide Dienste (_System.MIP und _System.MIP.Protection) angemeldet sein.

Verfügbare Labels​

Die verfügbaren Vertraulichkeitsbezeichnungen werden zur Laufzeit direkt aus dem MIP-Dienst gelesen (nicht aus einer lokalen Kopie):

  • Hierarchische Labels werden als Übergeordnet\Untergeordnet dargestellt.
  • Nur aktive Labels erscheinen.
  • Labels mit Rechteschutz erscheinen nur, wenn EnableProtection gesetzt ist.

Auswahl der Vertraulichkeitsbezeichnung im Generierungsformular des Desktop Clients

Die Label-Auswahl im Generierungsformular des Desktop Clients. Der Eintrag Demo Group\Demo Label in Group zeigt die Darstellung eines hierarchischen Labels.

Auswahl der Vertraulichkeitsbezeichnung im Generierungsformular der Web-App

Dieselbe Auswahl in der Web-App, hier zusätzlich mit der Beschreibung je Label.

Visuelle Markierungen

Bei der serverseitigen Generierung werden keine visuellen Markierungen (Kopf-/Fusszeilen, Wasserzeichen) eingebrannt — es wird lediglich das Label (inkl. Rechteschutz) gesetzt. Die visuellen Markierungen werden beim Öffnen des Dokuments im Office-COM-Add-In nachgezogen (Relabeling).

Netzwerkzugriff und Proxy​

Das MIP-SDK kommuniziert direkt mit den Microsoft-Cloud-Diensten (Richtlinien/Labels, Rechteschutz, Microsoft Entra ID). Deshalb braucht jedes System, das MIP-Operationen ausführt, ausgehenden HTTPS-Zugriff auf diese Dienste. Die benötigten Endpunkte sind in der Microsoft-Dokumentation aufgeführt.

Welches System das ist, hängt davon ab, wo das Dokument generiert wird:

  • Desktop Client: Labels werden lokal auf dem Arbeitsplatz geladen und angewendet.
  • primedocs Web, Office Web Add-Ins, DCS und Connect: Labels werden auf dem primedocs-Server geladen und angewendet.
Eigene Proxy-Einstellungen für MIP

MIP berücksichtigt die regulären Proxy-Einstellungen von primedocs (siehe Einsatz eines Proxys) nicht. Auf dem Server muss der Proxy für MIP separat konfiguriert werden, wie unten beschrieben.

Keine authentifizierten Proxys

Das MIP-SDK unterstützt keine Proxys mit Authentifizierung. Verlangt der Proxy eine Anmeldung, müssen die MIP-Endpunkte am Proxy von der Authentifizierung ausgenommen oder direkt (ohne Proxy) erreichbar sein.

Client​

Der Desktop Client läuft im Kontext des angemeldeten Windows-Benutzers und übernimmt damit dessen Proxy-Einstellungen. Hat der Benutzer Internetzugriff (z.B. im Browser), funktioniert in der Regel auch MIP ohne zusätzliche Konfiguration — ausser der Proxy erfordert eine Authentifizierung (siehe oben).

Server​

Die primedocs-Serverapplikationen laufen als Application Pool im IIS unter einem Dienstkonto (z.B. ApplicationPoolIdentity oder einem Service Account). Für dieses Konto sind typischerweise keine Proxy-Einstellungen hinterlegt, weshalb MIP-Anfragen ohne Proxy ins Leere laufen, obwohl der Rest von primedocs funktioniert. Der Proxy muss daher für WinHTTP konfiguriert werden. Dafür gibt es zwei Varianten:

Variante A (empfohlen): Maschinenweite WinHTTP-Konfiguration

In einer PowerShell mit Administratorrechten ausführen:

# Proxy setzen; lokale Adressen und interne Domänen umgehen den Proxy
netsh winhttp set proxy proxy-server="proxy.example.com:8080" bypass-list="<local>;*.example.com"

# Aktuelle Konfiguration anzeigen
netsh winhttp show proxy

Anschliessend die primedocs-Application Pools neu starten.

hinweis

Die WinHTTP-Konfiguration ist maschinenweit und nicht an ein Benutzerkonto gebunden — sie muss also nicht im Namen des Application-Pool-Kontos gesetzt werden und gilt automatisch für alle Application Pools. Sie wirkt allerdings auf alle Anwendungen auf dem Server, die WinHTTP nutzen (z.B. auch Windows Update). Die bypass-list so wählen, dass interne Adressen — insbesondere die primedocs-URL selbst — nicht über den Proxy laufen. Zurücksetzen mit netsh winhttp reset proxy.

Variante B: Internet-Einstellungen des Application-Pool-Kontos

Soll die Einstellung nur für primedocs gelten, lassen sich die Internet-Einstellungen direkt im Benutzerprofil des Kontos setzen, unter dem der Application Pool läuft. WinHTTP greift als Fallback auf diese Werte zurück.

  1. SID des Kontos ermitteln:

    # ApplicationPoolIdentity: "IIS APPPOOL\<Poolname>", sonst z.B. "DOMAIN\svc-primedocs"
    $account = New-Object System.Security.Principal.NTAccount("IIS APPPOOL\primedocs-Managed")
    $account.Translate([System.Security.Principal.SecurityIdentifier]).Value
  2. Unter HKEY_USERS\<SID>\Software\Microsoft\Windows\CurrentVersion\Internet Settings folgende Werte setzen:

    NameTypWert
    ProxyEnableREG_DWORD1
    ProxyServerREG_SZproxy.example.com:8080
    ProxyOverrideREG_SZ<local> (bei Bedarf ergänzt um interne Domänen, getrennt mit ;)
  3. Den Application Pool neu starten.

Die Werte müssen für jedes Konto gesetzt werden, unter dem ein primedocs-Application Pool mit MIP läuft. Der Zweig HKEY_USERS\<SID> existiert nur, wenn das Benutzerprofil geladen wird — im IIS muss dafür beim Application Pool «Load User Profile» auf True stehen (Standard).