Zum Inhalt springen

Enterprise-Richtlinie

Pia wendet beim Start eine Enterprise-Richtlinie an. IT-Administratoren setzen damit Standardwerte oder sperren einzelne Einstellungen auf verwalteten Geräten. Eine Richtlinie kann aus zwei Quellen kommen: aus einer Datei policy.json auf dem Gerät oder aus einer Richtlinie, die die Administration auf einem Pia Server für die Gruppe des Benutzers veröffentlicht.

Pia sucht policy.json an drei Stellen und verwendet die erste, die existiert. Die drei Dateien werden nie zusammengeführt.

%ProgramFiles%\Pia.Wpf\current\policy.json (der Ordner, aus dem Pia.exe läuft)
%ProgramFiles%\Pia.Wpf\policy.json (das Installationsverzeichnis)
C:\ProgramData\Pia.Wpf\policy.json

Lege die Datei ins Installationsverzeichnis, neben den Starter, mit dem die Benutzer Pia öffnen. Der Ordner, aus dem Pia.exe läuft, wird bei jeder Aktualisierung ersetzt — eine Richtlinie, die dort liegt, ist nach dem nächsten Update weg.

Standardbenutzer können diese Ordner lesen; nur Administratoren dürfen schreiben. Benutzer können die Datei nicht aus Pia heraus überschreiben.

Die Administration kann dasselbe Dokument in der Admin-Oberfläche des Pia Servers für eine ganze Gruppe veröffentlichen; es erreicht den Client über den normalen Sync. Eine vom Server veröffentlichte Richtlinie hat dieselben zwei Abschnitte, defaults und enforce, mit genau derselben Bedeutung wie in einer Datei. Alles Weitere in dieser Referenz gilt unverändert.

Drei Dinge solltest du über eine vom Server veröffentlichte Richtlinie wissen:

  • Sie wird auf dem Gerät zwischengespeichert. Die Richtlinie gilt nach einem Neustart und ohne Netzverbindung weiter, und sie verfällt nicht — eine Richtlinie, die der Server zuletzt vor Tagen bestätigt hat, gilt immer noch.
  • Sie greift beim nächsten Start. Veröffentlicht die Administration eine Richtlinie, während Pia läuft, holt der nächste Sync sie ab und Pia wendet sie beim nächsten Start an. Das ist so vorgesehen.
  • Beim Abmelden wird sie verworfen. Pia löscht die zwischengespeicherte Server-Richtlinie beim Abmelden, damit die nächste Person, die sich auf diesem Gerät anmeldet, nicht die Richtlinie der Gruppe des vorherigen Benutzers erbt.

Eine vom Server veröffentlichte Richtlinie hat bei jedem Schlüssel, den beide setzen, Vorrang vor der policy.json des Geräts. Innerhalb einer Quelle überschreibt enforce die Wahl des Benutzers, während defaults nur dort einspringt, wo der Benutzer nichts gewählt hat. Die vollständige Reihenfolge — der erste Treffer gewinnt:

  1. enforce vom Server
  2. enforce aus policy.json
  3. der eigene Wert des Benutzers
  4. defaults vom Server
  5. defaults aus policy.json
  6. der eingebaute Standard von Pia

Eine Richtlinie hat zwei Abschnitte auf oberster Ebene, beide mit derselben Struktur wie Pias Benutzereinstellungen:

  • defaults — ein Startwert. Er wird angewendet, solange der Wert des Benutzers noch dem Pia-Standard entspricht oder noch dem Wert, den die Richtlinie zuvor gesetzt hat.
  • enforce — fest gesetzte Werte. Die zugehörigen Bedienelemente in Pias Einstellungs-UI werden deaktiviert, sodass der Benutzer sie nicht ändern kann. Erscheint eine Eigenschaft in beiden Abschnitten, gewinnt enforce.

Alle Eigenschaftsnamen verwenden camelCase. Unbekannte Eigenschaften werden ignoriert. Ungültiges JSON wird als Warnung protokolliert und die Richtlinie wird nicht angewendet — schau ins Anwendungs-Log, falls eine Richtlinie nicht zu greifen scheint.

Eigenschaft Typ Standard Beschreibung
theme "System" | "Dark" | "Light" "System" UI-Design
uiLanguage "EN" | "DE" | "FR" "EN" Sprache der Oberfläche
targetLanguage "EN" | "DE" | "FR" nicht gesetzt Standard-Ausgabesprache für Optimieren
targetSpeechLanguage "Auto" | "EN" | "DE" | "FR" "Auto" Spracherkennungs-Sprache
defaultOutputAction "CopyToClipboard" | "AutoType" | "PasteToPreviousWindow" "CopyToClipboard" Was nach dem Optimieren passiert
autoTypeDelayMs integer 10 Verzögerung beim Auto-Tippen in Millisekunden
defaultTemplateId GUID nicht gesetzt Standard-Optimierungsvorlage
whisperModel "Tiny" | "Base" | "Small" | "Medium" | "Large" "Base" Whisper-Modellgröße
ttsEnabled bool false Sprachsynthese aktivieren
ttsVoiceModelKey string "en_US-lessac-medium" TTS-Stimmen-ID
startMinimized bool false Minimiert im Infobereich starten
launchAtStartup bool true Pia mit Windows starten
showTodoPanelButton bool true Todo-Panel-Schaltfläche im Hauptfenster anzeigen
autoUpdateEnabled bool true Automatische Aktualisierung beim Start zulassen
syncEnabled bool false Pia Cloud Sync aktivieren
serverUrl string nicht gesetzt Pia-Cloud-Server-URL (für Self-Hosting)
trustSelfSignedCertificates bool false Selbstsignierte TLS-Zertifikate akzeptieren
useSameProviderForAllModes bool true Einen KI-Anbieter für Optimieren und Assistent verwenden
modeProviderDefaults object {} Zuordnung von Gesprächsmodus zu KI-Anbieter-GUID
privacy object siehe unten Datenschutzeinstellungen (verschachtelt)

privacy ist ein verschachteltes Objekt:

Eigenschaft Typ Standard Beschreibung
tokenizationEnabled bool true PII durch Tokens ersetzen, bevor Text an die KI gesendet wird

Einstellungen, die der Server nicht verwalten kann

Abschnitt betitelt „Einstellungen, die der Server nicht verwalten kann“

Zwei Gruppen von Schlüsseln sind ausgenommen: die erste nur in einer vom Server veröffentlichten Richtlinie, die zweite in beiden Quellen.

Die VerbindungseinstellungenserverUrl, syncEnabled und trustSelfSignedCertificates. Mit ihnen erreicht Pia den Server überhaupt erst, und weil eine Server-Richtlinie Vorrang vor der Datei auf dem Gerät hat, könnte ein falscher Wert eine ganze Gruppe abschneiden, ohne dass sich das aus der Ferne noch korrigieren ließe. Alle drei lassen sich weiterhin in der policy.json des Geräts festschreiben — so schränkst du ein Gerät ein, bevor es überhaupt einen Server erreicht.

Pias eigene Buchführung — Anmeldedaten, Sync-Marker und ETags, Verschlüsselungszustand, Schema- und Migrationsstände, Fenstergeometrie und Entwurfstexte. Diese Schlüssel ignoriert Pia unabhängig von der Quelle, in der Datei genauso wie vom Server, und protokolliert eine Warnung mit dem Namen des Schlüssels.

{
"defaults": {
"uiLanguage": "DE",
"targetLanguage": "DE",
"whisperModel": "Small"
},
"enforce": {
"theme": "Dark",
"serverUrl": "https://pia.corp.example.com",
"syncEnabled": true
}
}

In diesem Beispiel ist Deutsch die Startsprache, Benutzer können aber auf Englisch oder Französisch wechseln. Das Design ist auf Dark fixiert, Sync ist verpflichtend, und die Pia-Cloud-URL ist auf den selbst gehosteten Firmen-Server festgelegt. serverUrl und syncEnabled funktionieren nur in einer policy.json auf dem Gerät — eine vom Server veröffentlichte Richtlinie kann sie nicht setzen.

  1. Lege oder bearbeite policy.json im Installationsverzeichnis von Pia auf jedem verwalteten Gerät an (z. B. über dein Endpoint-Management-System) — oder veröffentliche das Dokument in der Admin-Oberfläche des Pia Servers für eine ganze Gruppe.
  2. Validiere das JSON.
  3. Lass die Benutzer Pia schließen und erneut öffnen.

Einstellungen unter enforce erscheinen in Pias Einstellungs-UI ausgegraut; Defaults erscheinen normal.