14 min read
Privacy Management mit PowerShell – hier kommen die wichtigsten Funktionen von Priva auf einen Blick
Kennst du Priva? Datenschutzmanagement, Datenschutzrichtlinien, Regeln und Subjektrechte-Anfragen (data subject rights...
ScriptRunner Blog
Kennst du Priva? Datenschutzmanagement, Datenschutzrichtlinien, Regeln und Subjektrechte-Anfragen (data subject rights requests) – das Thema Datenschutz ist komplex, so geht es einfacher in der Administration:
Priva, oder Privacy Management, konzentriert sich auf den Schutz personenbezogener Daten und die Verhinderung von Datenlecks und gibt Organisationen ein Werkzeug an die Hand, mit dem sie die DSGVO und andere Vorschriften zum Schutz personenbezogener Daten einhalten können. Administratoren können PowerShell verwenden, um diese Einstellungen in manuellen oder automatisierten Prozessen zu erstellen, zu verwalten und zu dokumentieren. Priva bearbeitet auch Auskunftsersuchen in Bezug auf Daten, die eine Organisation über eine Person (oder einen Datensubjekt) besitzt (Subject Rights Requests). Microsoft hat Priva auch entwickelt, um diese Daten zu sichern, sobald sie identifiziert sind, und um der IT-Abteilung zu helfen, Entscheidungen darüber zu treffen, wie mit diesen Daten umzugehen ist. Wenn diese Daten in den Tenant gelangen, kann die Priva-Funktion helfen, ihre Verbreitung zu verhindern. In diesem Artikel konzentrieren wir uns auf die Kernfunktionen des Privacy Management.
Folgende Rollen sind für das Privacy Management verfügbar:
In diesem Microsoft Learn Artikel erfährst du, welche Funktionen diese Rollen haben. [Hinweis: Die deutsche Version des Artikels liegt hier, die Übersetzung 'holpert' an manchen Stellen etwas, daher bleiben wir bei den englischen Bezeichnungen.]
Priva ist eine Zusatzlizenz. Auch wenn du einen bestehenden Lizenzplan hast, musst du dieses Add-on kaufen, um Priva nutzen zu können. Wenn du zum Beispiel eine E1, E3 oder E5 Lizenz hast und Priva nutzen möchtest, musst du ein Add-on kaufen.
Microsoft bietet auch eine Testlizenz an, mit der du das Programm ausprobieren kannst. Wenn du keine Lizenz gekauft hast, ist dies eine großartige Option für Unternehmen, um zu verstehen, welche Daten sie haben und möglicherweise Richtlinien für den Umgang mit diesen Daten zu erstellen. Sobald dies geschehen ist, müssen Lizenzen erworben werden, um diese Funktion optimal nutzen zu können.
Auf der Registerkarte "Übersicht" unter der Priva-Funktion kann das Priva-Dashboard aufgerufen werden, um einen schnellen Überblick über den Tenant zu erhalten und zu sehen, ob und was Priva entdeckt hat.
Wie die meisten Funktionen in Microsoft 365 hat Priva eine Reihe von 'Karten', auf denen Informationen angezeigt werden
Nachdem wir nun einige der Grundlagen geklärt haben, wollen wir uns ansehen, was mit der PowerShell möglich ist. Erinnern wir uns, dass Priva sowohl das Datenschutzmanagement als auch das Anfordern von Rechten der Betroffenen, früher bekannt als Data Subject Requests, umfasst. Die Priva PowerShell ist im Security and Compliance Center PowerShell Modul enthalten, auf das mit Connect-IPPSSession zugegriffen wird, während die Subject Rights Requests mit dem Microsoft Graph PowerShell Modul über Connect-MgGraph aufgerufen werden.
Hier eine kurze Liste der Cmdlets, die im Security and Compliance Center PowerShell-Modul zur Verfügung stehen:
Get-Command *priva*
Diese Cmdlets sind verfügbar:
Get-PrivacyDataMatchSchema Get-PrivacyManagementCaseAdmin
Get-PrivacyManagementComplianceCaseMember Get-PrivacyManagementComplianceTag
Get-PrivacyManagementPolicy Get-PrivacyManagementRule
New-PrivacyDataMatchSchema New-PrivacyManagementComplianceTag
New-PrivacyManagementPolicy New-PrivacyManagementRule
Remove-PrivacyDataMatchSchema Remove-PrivacyManagementCaseAdmin
Remove-PrivacyManagementComplianceCaseMember Remove-PrivacyManagementComplianceTag
Remove-PrivacyManagementPolicy Remove-PrivacyManagementRule
Set-PrivacyDataMatchSchema Set-PrivacyManagementComplianceTag
Set-PrivacyManagementPolicy Set-PrivacyManagementRule
Im Datenschutzmanagement benötigen wir Richtlinien / Regelpaare (policy / rule pairs), um eine funktionierende Datenschutzrichtlinie zu erstellen.
Sehen wir uns zunächst die eingebauten Richtlinien (Policies) an, auf die sich die eingebauten Regeln (Rules) für das Privacy Management beziehen.
Get-PrivacyManagementPolicy | Format-Table Name, Type, Mode, PrivacyManagementScenario, Workload
In einer neuen Umgebung würden wir nur diese Standard-Datenschutzrichtlinien sehen
Wir können die oberste Standardrichtlinie überprüfen, um zu sehen, was sie enthält. Dazu führen wir diesen Einzeiler aus:
Get-PrivacyManagementPolicy 'Default data transfers' | Format-List
Überprüfe die Regel und frage ihre Einstellungen ab
Die Datenschutzrichtlinie enthält nur wenige Informationen, die ein Administrator verwenden könnte, um die Verwendung dieser Richtlinie zu bestimmen. Stattdessen müssen wir uns die Regel ansehen, die diese Richtlinie anwendet. Die Standardrichtlinien lassen sich leicht über ihren Namen mit der entsprechenden Regel verknüpfen. In diesem Fall prüfen wir die Regel Get-PrivacyManagementPolicy 'Default data transfers' und fragen ihre Einstellungen ab.
Wie bereits erwähnt, sind Richtlinien mit Regeln verknüpft und wir können die PowerShell verwenden, um Details zu der Regel zu erhalten, die in den Richtlinien erwähnt wird, die wir im vorherigen Schritt überprüft haben.
Get-PrivacyManagementRule 'Default data transfers'
Diese Regel besteht aus mehreren Teilen, zunächst aus der Regel im XML-Format:
Vollständige Regel im XML-Format
Außerdem enthält diese Regel folgende Einstellungen:
Einstellungen dieser Regel
Wir haben eine Hashtabelle für die Eigenschaft ContentContainsSensitiveInformation, in der die Arten von sensiblen Informationen gespeichert sind, auf die diese Regel zutreffen soll.
Wir können diesen Wert iterativ mit diesen Einzeilern aufschlüsseln. Erstens, was speichert diese Eigenschaft selbst?
(Get-PrivacyManagementRule 'Default data transfers').ContentContainsSensitiveInformation
Werte und untergeordnete Werte
Wir sehen, dass es einige Sub-Values gibt, die wir auch noch aufschlüsseln können:
(Get-PrivacyManagementRule 'Default data transfers').ContentContainsSensitiveInformation.Groups
Wir sehen, dass es auch hier Gruppen von SITs gibt, die als Hashtabellen gespeichert sind, die wir erweitern können
Um jede dieser Gruppen zu erweitern, können wir diesen PowerShell-Einzeiler ausführen:
(Get-PrivacyManagementRule 'Default data transfers').ContentContainsSensitiveInformation.Groups.sensitivetypes
Jedes farbige Rechteck stellt eine separate SIT dar, die dieser Datenschutzregel zugeordnet ist
Für diese Regel wurden 27 SITs definiert
Wo wird diese Kombination aus Richtlinie und Regel verwendet? Dies ist auf einem der vorherigen Screenshots zu sehen:
Vereinfachte Ansicht der Orte, an denen diese Regel angewendet wird
Es gibt auch eine Eigenschaft des Grenzindikators (Boundary Indicator property) namens CrossBoundaryTransfers. Wenn wir diese Eigenschaft überprüfen, sehen wir unsere Tenant region (in diesem Fall 'NAM' und es gibt eine Zielgrenze für alle Regionen.) Diese Richtlinie überwacht den Verkehr zwischen den Regionen (in Microsoft 365).
Bei der Erstellung einer Datenschutzrichtlinie müssen wir Einstellungen wählen, die den Fokus und die Absicht von Richtlinie und Regel bestimmen. Bei der Erstellung der Richtlinie selbst müssen wir den Speicherort (Exchange, OneDrive usw.) und das Szenario (OpenAccess, DataMinimization, HighRiskDataTransfer oder TenantSettings) auswählen. Darüber hinaus wird empfohlen, einen Kommentar zur Richtlinie hinzuzufügen, um den Zweck der Richtlinie zu dokumentieren und eventuell das Datum, an dem die Richtlinie erstellt oder geändert wurde, anzugeben.
In diesem Beispiel konzentrieren wir uns auf alle privaten Daten, die in OneDrive gespeichert sind und irgendwann gelöscht werden müssen.
New-PrivacyManagementPolicy -Name 'Corporate OneDrive PM Policy' -Comment 'Created 2024/4/2' -PrivacyManagementScenario DataMinimization -OneDriveLocation All
In diesem zweiten Beispiel konzentrieren wir uns auf Daten, die in SharePoint offengelegt werden können, da einige Seiten öffentlich sind und personenbezogene Daten offenlegen könnten.
New-PrivacyManagementPolicy -Name 'SharePoint Overexposure Containment Policy' -Comment 'Created 2024/2/7' -PrivacyManagementScenario OpenAccess -SharePointLocation All
Jetzt haben wir zusätzliche Richtlinien in unserem Tenant:
Die neuen Richtlinien befinden sich in dem roten Rechteck oben
Beachte, dass es drei Modi für diese Richtlinien gibt:
Wenn du zum ersten Mal eine Richtlinie erstellst, solltest du TestWithNotifications verwenden, um ein Gefühl für den Prozess zu bekommen.
Nachdem wir unsere Richtlinien erstellt haben, können wir nun die entsprechenden Regeln für das Datenschutzmanagement erstellen. Im folgenden Beispiel verbinden wir eine Datenschutzrichtlinie mit dieser neuen Datenschutzregel mit den folgenden Kriterien: Alle OneDrive-Sites, Deaktivierung von E-Mail-Benachrichtigungen, Einstellung der Zugriffsstufe auf alle drei verfügbaren und Überprüfung aller Daten, die länger als 180 Tage inaktiv sind.
New-PrivacyManagementRule -Name 'Corporate OneDrive PM Rule' -PrivacyAccessLevel Public, External, Internal -Policy 'Corporate OneDrive PM Policy' -OneDriveSites All -PolicySettings "{'EmailDigestSettings': {'IsEnabled':'False'}}" -Mode -LastModifiedThresholdInDays 180 -ContentContainsSensitiveInformation @(@{Name="U.S. Social Security Number (SSN)"},@{Name="U.S. Bank Account Number"})
Beachte, dass der PolicySetting-Parameter JSON-Werte erfordert und dass es keine Rückmeldung in PowerShell gibt, wenn die Regel erfolgreich erstellt wurde.
Für unsere nächste Beispielregel werden wir stattdessen E-Mail-Benachrichtigungen aktivieren, eine URL für den Datenschutz angeben, sicherstellen, dass die Regel auf TestWithNotifications gesetzt ist, nur internen Zugriff berücksichtigen und sie für SharePoint und OneDrive aktivieren.
Zuerst müssen wir unsere Richtlinie von Enforce in TestWithNotifications ändern:
Set-PrivacyManagementPolicy 'Corporate OneDrive PM Policy' -Mode TestWithNotifications
Als Nächstes erstellen wir die zugehörige Regel:
Erstelle JSON für die Einstellungen der Richtlinie (Policy Settings):
$PolicySettings = @{
TrainingLink: "https://www.practicalpowershell.com/privacymanagement",
EmailDigestSettings = @{
IsEnabled = $true
FrequencyType = "Weekly",
DigestFrequencyWeeklyDay = "Monday"
}
}| ConvertTo-Json
Dann den PowerShell Einzeiler, um die neue Regel zu erstellen:
New-PrivacyManagementRule -Name 'Corporate OneDrive PM Rule' -PrivacyAccessLevel Internal -Policy 'Corporate OneDrive PM Policy' -OneDriveSites All -PolicySettings $PolicySettings -Mode -LastModifiedThresholdInDays 90 -ContentContainsSensitiveInformation @(@{Name="U.S. Social Security Number (SSN)"},@{Name="U.S. Bank Account Number"})
Wir haben jetzt eine Regel und eine Richtlinie für das Datenschutzmanagement, die uns über Daten informieren, die möglicherweise privater Natur sind und mit zwei SITs übereinstimmen, die älter als 90 Tage sind.
Diese Tags erfüllen eine ähnliche Funktion wie die Retention-Tags in den Retention-Policies: Sie legen fest, was mit den Daten geschehen kann, wenn eine bestimmte Zeit verstrichen ist. Im Kontext des Datenschutzmanagements bestimmen diese Compliance-Tags, was mit Daten geschieht, die aufgrund von Datenschutzbedenken entdeckt und markiert wurden. Schauen wir uns die vier Cmdlets an.
Get-Command *privacy*compliancetag
Diese Cmdlets werden bereitstellt:
Get-PrivacyManagementComplianceTag
New-PrivacyManagementComplianceTag
Remove-PrivacyManagementComplianceTag
Set-PrivacyManagementComplianceTag
Wir können PowerShell verwenden, um Tags für die Einhaltung der Datenschutzbestimmungen zu erstellen und sie mit den entsprechenden Informationen zu versehen. Ein Beispiel für ein neu erstelltes Tag sieht wie folgt aus:
New-PrivacyManagementComplianceTag -Name 'Personal Data - Employees' -Comment 'Created by Damian' -RetentionACtion Delete -RetentionDuration 180
Wir haben jetzt ein Tag, das, wenn es verwendet wird, die Daten nach 180 Tagen löscht.
In einer Greenfield-Umgebung gibt es keine Compliance-Tags für das Datenschutzmanagement. Sobald wir jedoch ein oder mehrere Tags erstellt haben, können wir ihre Einstellungen mit der PowerShell abfragen.
Get-PrivacyManagementComplianceTag | Format-Table Name,Retention*,Comment
Auflistung aller Compliance-Tags im Datenschutzmanagement
Um ein Tag zu entfernen, müssen wir das cmdlet remove wie folgt ausführen:
Remove-PrivacyManagementComplianceTag 'Personal Data - Teams'
Als Sicherheitsmaßnahme werden wir außerdem aufgefordert, das Löschen zu bestätigen:
Ein bestehendes Compliance-Tag entfernen
Mit der PowerShell können wir bestehende Tags ändern. Zum Beispiel können wir Kommentare hinzufügen oder ändern oder die Aufbewahrungsart oder die Aufbewahrungsdauer ändern:
Set-PrivacyManagementComplianceTag 'Personal Data - Employee' -Comment 'Added by Damian on 4/16/24'
Set-PrivacyManagementComplianceTag 'Personal Data - Employee' -RetentionDuration 365
Während PowerShell ein großartiges Werkzeug für Administratoren ist und so oft wie möglich verwendet werden sollte, um die täglichen Aufgaben zu erleichtern, sollten wir es nicht immer zu 100% für kompliziertere Aufgaben wie das Datenschutzmanagement verwenden. Erstens sind nicht alle konfigurierbaren Optionen einfach zu konfigurieren. Zweitens scheinen derzeit nicht alle Befehle zu funktionieren. Trotz einiger dieser Komplikationen scheint PowerShell die einzige Option zu bieten, Compliance-Tags zu erstellen; und PowerShell sie ist immer noch nützlich, um Berichte über Einstellungen usw. zu erstellen. Im Falle von Privacy Management PowerShell sollte der Käufer vorsichtig sein, genau prüfen und es dann dort einsetzen, wo es wirklich für das jeweilige Unternehmen/Szenario geeignet ist.
Privacy Management umfasst auch Anfragen zu den Rechten der Personen (Datensubjekte), die früher als "Data Subject Requests" bezeichnet wurden. Wenn du mehr über die Richtlinien, Regeln und Anfragen zu den Rechten der betroffenen Person erfahren möchtest, solltest du dir ein Exemplar von Damians PowerShell-Buch besorgen, das du bei PracticalPowerShell.com und LeanPub findest.
Die sichere Verwendung von PowerShell ist der Schlüssel zur erfolgreichen Automatisierung von IT-Administrationsaufgaben. Unser 150-seitiges PowerShell Security E-Book deckt alle integrierten Funktionen ab, die deine PowerShell-Umgebung sicher und zuverlässig machen.
Monatlich wechselnde Webinare. Die Webinare werden aufgezeichnet und können über den Link anfordern. Melde dich für unseren Newsletter an, um rechtzeitig die nächsten Themen zu erfahren. In diesem Webinar erfährst du:
Entfalte das volle Potential von PowerShell mit unserem praktischen Poster. Egal ob Anfänger oder erfahrener Profi, dieses Cheat Sheet ist darauf ausgelegt, dein Anlaufpunkt für die wichtigsten und am häufigsten verwendeten Cmdlets zu sein.
Das Poster gibt es zum Download und in Papierform.
Jul 16, 2024 by Damian Scoles
Kennst du Priva? Datenschutzmanagement, Datenschutzrichtlinien, Regeln und Subjektrechte-Anfragen (data subject rights...
Jun 20, 2024 by Damian Scoles
Lüfte die Geheimnisse der sicheren Passwortverwaltung in PowerShell! Entdecke, wie die Secrets Management Module von...
Jul 26, 2023 by Damian Scoles
Im Artikel erfährst du, wie CBA (Certificate Based Authentication) für Exchange Online PowerShell funktioniert. Da die...
Damian Scoles ist ein zehnfacher Microsoft MVP mit Spezialisierung auf Exchange, Office 365 und PowerShell, der über 25 Jahre Erfahrung in der IT-Branche mitbringt. Er ist im Großraum Chicago ansässig und begann mit der Verwaltung von Exchange 5.5 und Windows NT. Im Laufe der Jahre hat er mit Office 365 seit BPOS gearbeitet und darüber hinaus Erfahrung mit Azure AD, Security and Compliance Admin Centers und Exchange Online. Zu seinem Engagement in der Community gehören Beiträge in TechNet-Foren, die Erstellung von PowerShell-Skripten, die in seinen Blogs zu finden sind, das Schreiben von ausführlichen PowerShell/Office365/Exchange-Blogartikeln, Tweets und die Erstellung von PowerShell-Videos auf YouTube. Er hat fünf PowerShell-Bücher geschrieben und arbeitet außerdem aktiv an dem Buch "Microsoft 365 Security for IT Pros".