9 min read
Scriptember 2024 – einen Monat lang feiern wir PowerShell
Willkommen im Scriptember! Wir freuen uns, einen ganz besonderen Monat ankündigen zu können: Wir feiern einen Monat...
ScriptRunner Blog
Mit Microsoft Purview verstehst und verwaltest du Daten in deinem gesamten Datenbestand – wie kannst du PowerShell nutzen, um das volle Potenzial auszuschöpfen? Hier kommen zehn Aufgaben, die du perfekt mit PowerShell lösen kannst. Welche dieser zehn erledigst du bereits mit PowerShell?
Es gibt so unglaublich viele PowerShell-Cmdlets, wie lassen sich da die zehn besten finden? In diesem Artikel wird es um die wichtigsten Aufgaben für Microsoft Purview Compliance gehen und um die Frage, wie du PowerShell hier sinnvoll einsetzt und dir damit die Arbeit erleichterst.
Sicherheit und minimale Berechtigungen sind ein wichtiger Aspekt jedes Microsoft 365-Dienstes, auch von Purview. Dies ist die erste Aufgabe, denn sie ist eine der wichtigsten, die ausgeführt werden muss. Administratoren sollten alle fehlerhaften Berechtigungen oder Rollenzuweisungen, die in ihrem Tenant gefunden werden, überprüfen und korrigieren. Im Folgenden findest du einige Möglichkeiten, diese Rollengruppen und ihre Mitgliedschaften zu überprüfen.
# List all Role Groups
Get-RoleGroup
# List Members of one Role Group
Get-RoleGroupMember -Identity RecordsManagement
# List members of all Role Groups (sorted)
(Get-RoleGroup).Name | Sort Name | % {
$Members = $Null
Write-Host $_ -ForegroundColor Green
$Members = Get-RoleGroupMember -Identity $_
If ($Null -eq $Members) {
Write-Host 'No Members' -ForegroundColor Yellow
} Else {
$Members
}
}
Alle Ergebnisse werden wie folgt angezeigt:
Purview hat zwei Arten von Rollen für eDiscovery, die zugewiesen werden können: eDiscovery-Manager und eDiscovery-Administrator. Der eDiscovery-Administrator ist ein Mitglied der Rollengruppe eDiscovery-Manager und kann die gleichen Aufgaben wie ein eDiscovery-Manager ausführen, allerdings kann ein Administrator auch auf jeden Fall in der Organisation zugreifen. Das ist etwas, was die Managerrolle einfach nicht kann.
BIm Folgenden findest du vier Cmdlets, mit denen du Nutzer mit dieser Rolle verwalten kannst:
# Füge einen neuen Admin hinzu
Add-eDiscoveryCaseAdmin -User damian@practicalpowershell.com
# Liste alle aktuellen Admins auf
Get-eDiscoveryCaseAdmin
# Entferne einen bestehenden Admin (Änderung der Verantwortlichkeiten)
Remove-eDiscoveryCaseAdmin -User damian@practicalpowershell.com
# Ersetze aktuelle durch ein oder mehrere neue Administratoren
Update-eDiscoveryCaseAdmin -Users john@domain.com,jane@domain.com
Die Kennzeichnung von Informationen in einem Microsoft 365-Tenant ist eine Übung, die alle Organisationen durchführen sollten, selbst wenn nur zwei Kennzeichnungen erstellt werden (z. B. öffentlich und intern), da dies Schutz für Informationen bietet, die andernfalls zu Problemen führen könnten (finanziell, regulatorisch usw.), wenn sie versehentlich oder absichtlich an die Öffentlichkeit gelangen oder gehackt werden. Kennzeichnungen und Kennzeichnungsrichtlinien ermöglichen es Organisationen, Informationen nach eigenem Ermessen mit einer Schutzschicht zu versehen. Der erste Schritt besteht darin, herauszufinden, welche Schichten für die produzierten Informationen benötigt werden, z. B. ob es Partnerorganisationen gibt, mit denen Informationen ausgetauscht werden sollen, ob öffentliche Informationen ohne Schutz veröffentlicht werden oder ob vertrauliche oder streng vertrauliche Informationen zusätzliche Schutzmaßnahmen benötigen. Schließlich muss ein Plan erstellt werden, wie die Nutzer über die Verwendung von Kennzeichnungen auf den erstellten Dokumenten informiert und angeleitet werden.
# Liste vorhandene Labels/Kennzeichnungen oder Kennzeichnungsrichtlinien auf
Get-Label
Get-LabelPolicy
# Erstelle neue Labels und Policies
New-Label -DisplayName 'Public' -Name 'Public' -ToolTip 'Der Inhalt kann der Öffentlichkeit gezeigt werden und ist NICHT geschützt.'
New-Label -DisplayName 'Confidential' -Name 'Confidential' -ToolTip 'Der Inhalt ist vertraulich und NUR für interne Nutzer!'
New-LabelPolicy -Name 'Corporate Labels' -Labels 'Public,Confidential'
# Entferne von Label Policies (nicht Labels!)
Remove-LabelPolicy -Name 'Corporate Labels'
Mit Purview können Compliance-Administratoren Aufgaben im Zusammenhang mit der Datenermittlung durchführen, wie z.B. Data Subject Requests, eDiscovery, Data Investigations und mehr. Wenn eine Organisation über genügend Komplexität verfügt, ermöglicht Purview auch eine Granularisierung von Berechtigungen, bei der wir RBAC einrichten können, so dass Nutzer vollen Zugriff auf alle Fälle, Zugriff auf bestimmte Fälle oder nur Zugriff auf Ergebnisse/ausschließlich lesbare Ansichten haben können. Mit PowerShell lassen sich Fälle erstellen, Berechtigungen ändern, Daten abrufen und vieles mehr.
m Folgenden findest du eine kleine Auswahl der Möglichkeiten, die du mit Compliance Cases und PowerShell nutzen kannst:
# Liste alle Compliance Cases auf oder filtere nach bestimmten Typen
Get-ComplianceCase
Get-ComplianceCase -CaseType DSR
# Erstelle neue Compliance-Fälle
New-ComplianceCase -Name "Case # FG-4576" -Description "Legal Case for Financial Group 05-2023"
# Füge Mitglieder zu einem bestehenden Fall hinzu
Add-ComplianceCaseMember -Case "Case # 430" -Member damian@practicalpowershell.com
Add-ComplianceCaseMember -Case "Case # 430" -Member dave@practicalpowershell.com
# Entferne einen bestehenden Fall (oder alle Fälle eines bestimmten Typs)
Remove-ComplianceCase -Identity 'Case #FG-4576'
Get-ComplianceCase -CaseType DSR | Remove-ComplianceCase
Aufbewahrungsrichtlinien in Microsoft 365 können auf eine Vielzahl von Datenquellen angewendet werden, von Exchange-Postfachdaten über Microsoft 365-Gruppen, Teams-Chat/Kanalnachrichten und sogar SharePoint/OneDrive-Daten. Diese Richtlinien können mit der PowerShell verwaltet werden, indem man neue erstellt, bestehende ändert oder einfach überprüft, was zu Berichtszwecken vorhanden ist. Microsoft stellt insgesamt 31 Cmdlets zur Verfügung, die mit der Aufbewahrung von Informationen in der Cloud arbeiten. Bei der Erstellung von Aufbewahrungsfristen ist es wichtig zu wissen, dass wir sowohl eine Richtlinie (erstens) als auch eine Regel (zweitens) benötigen. Im Folgenden findest du einige Beispiel-Cmdlets, die dir zeigen, wie du die Aufbewahrung in Microsoft 365 angehen kannst:
# Liste alle vorhandenen Aufbewahrungsrichtlinien oder -regeln auf
Get-RetentionCompliancePolicy
Get-RetentionComplianceRule
# Erstelle neue Retention Policies und Regeln
New-RetentionCompliancePolicy -Name "Seven Year Email Policy" -ExchangeLocation All
New-RetentionComplianceRule -Name "Seven Year Email Rule" -Policy "Seven Year Email Policy" -RetentionDuration 2555
# Entferne Policies und Regeln
Remove-RetentionCompliancePolicy -Name "Seven Year Email Policy"
Remove-RetentionComplianceRule -Name "Seven Year Email Rule"
Hinweis: Einige Einstellungen können nicht mehr geändert werden, sobald eine Aufbewahrungsrichtlinie erstellt wurde. Achte also auf deine Einstellungen, da je nach gewünschter Änderung/Aktualisierung einer Richtlinie eine neue Richtlinie erforderlich sein kann.
Datenverluste und -exfiltration sind häufige Probleme, mit denen sich Administratoren auseinandersetzen müssen. Microsofts DLP-Funktion (Data Loss Prevention) in ihrem Cloud-Dienst hilft Unternehmen dabei, diese Probleme zu vermeiden. Wir können Richtlinien für Daten in verschiedenen Workloads wie SharePoint, Exchange, OneDrive und Teams festlegen. Ähnlich wie die oben beschriebenen Aufbewahrungsrichtlinien und -regeln können wir auch DLP-Richtlinien und -Regeln mit PowerShell verwalten. Hier sind einige Beispiel-Cmdlets, um diese Aufgaben auszuführen.
# Liste alle vorhandenen Richtlinien und Regeln auf
Get-DLPCompliancePolicy
Get-DLPComplianceRule
# Erstelle eine neue Richtlinie und einen neuen Satz von Regeln
New-DlpCompliancePolicy -Name 'Corporate DLP Policy' -ExchangeLocation All -SharePointLocation All -TeamsLocation All -Mode TestWithNotifications
New-DlpComplianceRule -Name 'Corporate DLP Rule' -Policy 'Corporate DLP Policy' -ContentContainsSensitiveInformation @(@{Name="U.S. Social Security Number (SSN)"},@{Name="U.S. Bank Account Number"}) -BlockAccess $True
# Entferne alle vorhandenen Richtlinien oder Regeln
Remove-DlpComplianceRule 'Corporate DLP Rule'
Remove-DlpCompliancePolicy 'Corporate DLP Policy'
Das interne Risikomanagement in Microsoft 365 dient dazu, das Risiko interner Nutzer für eine Organisation zu mindern, wenn ihre Handlungen der Organisation potenziellen Schaden zufügen könnten. Während sich Administratoren in der Regel auf externe Bedrohungen konzentrieren, hilft diese Funktion den Administratoren, auch interne Aktivitäten auf bösartige oder nicht richtlinienkonforme Aktivitäten zu überwachen. Zu diesen Aktivitäten gehören: Datenlecks und Datenverluste, Verletzung der Vertraulichkeit, Diebstahl von geistigem Eigentum (IP), Betrug, Insiderhandel und Verstöße gegen gesetzliche Vorschriften. Wie bei jeder Funktion dieser Art sollte eine Pilotgruppe gebildet werden, die die Funktion testet, um festzustellen, ob sie in der Lage ist, das von einem Unternehmen gewünschte Maß an Überwachung zu leisten. Insider Risk bietet Benachrichtigungen, Berichte und betroffene Nutzer. Im Folgenden sind einige Möglichkeiten aufgeführt, wie wir die PowerShell nutzen können, um diese Funktion zu verwalten:
# Liste alle bestehenden Insider Risk Policies auf
Get-InsiderRiskPolicy
Get-InsiderRiskPolicy CheckForLeaks
# CErstelle eine neue Insider Risk Policy
New-InsiderRiskPolicy -Name CheckForLeaks -InsiderRiskScenario LeakOfInformation
# Entferne eine bestehende Insider Risk Policy
Remove-InsiderRiskPolicy CheckForLeaks
# Ändere die Einstellungen einer bestehenden Insider Risk Policy
Set-InsiderRiskPolicy CheckForLeaks -AddExchangeLocation Brian
# Deaktiviere eine bestehende Insider Risk Policy
Set-InsiderRiskPolicy CheckForLeaks -Enabled $False
Die Überwachung der Kommunikation ist manchmal ein notwendiges Übel für eine Organisation und Organisationen müssen sich über den Datenschutz und andere gesetzliche Vorschriften im Klaren sein, bevor sie Richtlinien für die Einhaltung von Kommunikationsrichtlinien konfigurieren. Communication Compliance ist ein Ersatz für das, was ursprünglich als Supervision bekannt war, und ist so strukturiert, dass es die Kommunikation in einem Tenant auf unangemessene Mitteilungen überwacht und diese erkennen, erfassen und darauf reagieren kann. Das Produkt verfügt über vordefinierte Richtlinien, die den Einstieg in das Produkt erleichtern, und erlaubt sogar benutzerdefinierte Richtlinien, mit denen du die interne und externe Kommunikation überprüfen kannst. Wenn eine Nachricht von diesen Richtlinien erkannt wird, kann ein Prüfer sie untersuchen und Maßnahmen ergreifen, um sicherzustellen, dass die Kommunikation mit den Richtlinien deines Unternehmens übereinstimmt. Diese Nachrichten können E-Mails, Microsoft Teams, Yammer oder andere Drittanbieterkommunikation in deinem Tenant umfassen. Im Folgenden findest du einige Beispiele für die Verwendung von PowerShell und Communication Compliance:
# Liste aktuelle Richtlinien oder Regeln auf
Get-SupervisoryReviewPolicyV2
Get-SupervisoryReviewRule
# Compliance-Berichte für die Kommunikation
Get-SupervisoryReviewActivity
Get-SupervisoryReviewOverallProgressReport
Get-SupervisoryReviewPolicyReport
Get-SupervisoryReviewTopCasesReport
# Erstelle neue Policies und Regeln
New-SupervisoryReviewPolicyV2 -Name "Source Code Detection" -Reviewers george@cooltoys.com -Comment "Monitor Source Code in communications"
New-SupervisoryReviewRule -SamplingRate 50 -Policy "Source Code Detection" -Condition
(Reviewee:damian@cooltoys.com)
Informationsbarrieren sind ein logisches Konstrukt, das die Kommunikation zwischen Gruppen von Menschen verhindert. Alle Personen, die an der Kommunikation gehindert werden, müssen mit Azure AD synchronisiert werden. Die Filter für Nutzer basieren auf den Azure AD Nutzern und den Attributen, die für Filter erlaubt sind. Wir können einen oder mehrere Filter für die Filterung von Nutzern verwenden. Microsoft empfiehlt jedoch, dass diese Filter nicht zu komplex sind. Wenn es um die Verwaltung dieser Barrieren geht, müssen wir entweder das Purview Compliance Center oder das Security and Compliance Center PowerShell-Modul verwenden. Im Folgenden findest du einige Beispiele für PowerShell-Cmdlets für Informationsbarrieren:
# Liste alle vorhandenen Informationsbarrieren auf
Get-InformationBarrierPolicy
# Überprüfe Information Barrier Informationen zwischen Damian und Dave
Get-InformationBarrierRecipientStatus -Identity Damian -Identity2 Dave
# Erstelle eine neue Information Barrier Policy
New-OrganizationSegment IT
New-OrganizationSegment Research
New-InformationBarrierPolicy -Name 'IT-Research' -AssignedSegment IT -SegmentsBlocked Research -State Active
# Ändere die Einstellungen einer bestehenden Information Barrier Policy
Set-InformationBarrierPolicy -Identity 'IT-Research' -State Inactive
# Entferne eine bestehende Information Barrier Policy
Remove-InformationBarrierPolicy -Identity 'IT-Research'
Hinweis: Um eine Informationsbarriererichtlinie (information barrier policy) zu entfernen, musst du sie zuerst auf den Status Inaktiv setzen.
Microsoft stellt ein Skript zur Verfügung, das dir bei der Überprüfung und Analyse der Konfiguration deines Purview Compliance Centers hilft. Es ist nicht so technisch orientiert wie das ORECA-Skript, das ebenfalls von Microsoft bereitgestellt wird, aber es lohnt sich trotzdem, es auszuführen.
Unter diesem Link findest du weitere Informationen und kannst das Skript herunterladen (Download über GitHub).
Mit PowerShell können Unternehmen Aufgaben durchführen, die für die Verwaltung, Überwachung und Konfiguration des Microsoft 365-Tenants erforderlich sind, und auch die Purview-Funktion ermöglicht ein hohes Maß an Kontrolle über die PowerShell. In diesem Artikel haben wir uns auf die zehn wichtigsten Aufgaben für deine Purview-Compliance-Konfiguration konzentriert und Dutzende von PowerShell-Beispiel-Einzeilern für diese Aufgaben kennengelernt. Es lohnt sich, investiere ein bisschen Zeit, dann kann PowerShell diese Aufgaben übernehmen. Es gibt sicherlich noch Hunderte weiterer Cmdlets, aber diese Beispiele sollten dir die Zuversicht geben, noch mehr über PowerShell für Purview zu lernen.
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.
Aug 16, 2024 by Heiko Brenn
Willkommen im Scriptember! Wir freuen uns, einen ganz besonderen Monat ankündigen zu können: Wir feiern einen Monat...
Aug 14, 2024 by Jeffery Hicks
Wie gut bist du mit dem Thema vertraut? Vielleicht gibt dir dieser Artikel nur einen Überblick. Aus meiner Erfahrung in...
Jun 28, 2024 by Philip Lorenz
Windows PowerShell 5.1 ist in der Regel vorinstalliert und der Standard – lohnt sich ein Wechsel auf PowerShell 7, oder...
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".