5 min read
Steigere deine IT Automations-Effizienz mit neuer ScriptRunner Version
Wir haben unser neuestes ScriptRunner-Update, Version 7.1, veröffentlicht. Dieses Update ist vollgepackt mit...
ScriptRunner Blog
Mit Microsoft 365 und Sensitivity Labeln sind Sie einen Schritt voraus. Der Schutz der Informationen eines Unternehmens vor Diebstahl und anderen bösartigen Angriffen ist eine wichtige Aufgabe, bei der unterschiedliche Maßnahmen zum Einsatz kommen. Hier geht es um die Kennzeichnungsfunktion von Microsoft, die Sensitivity Label, welche den Schutz dieser Informationen auf internen Systemen, in Microsoft 365 oder bei der Freigabe nach außen ermöglichen. Diese Label bieten Verschlüsselung, einen Kopierschutz sowie erweiterte Schutzmechanismen für Ihre Informationen. Mit der Unterstützung nativer Anwendungen sind Label zudem unaufdringlich. Sensitivity Label sind ein Thema, das einer gewissen Planung bedarf, bevor sie dem gesamten Unternehmen zur Verfügung gestellt werden können.
Microsoft bietet ein eigenes PowerShell-Modul, das als Verwaltungstool für diese Microsoft 365-Funktion verwendet werden kann. Es kann auch mit der grafischen Benutzeroberfläche kombiniert werden, die im Microsoft Purview Security & Compliance-Portal (hier) zu finden ist. Damit erhalten Sie eine umfassende Verwaltungslösung:
Beim Thema Security Label gilt es eine Reihenfolge zu berücksichtigen, damit beim Erstellen, Anwenden und Verwalten alles funktioniert. Das zentrale Element sind die Label, die erstellt sein müssen, bevor die anderen Schritte erfolgen. Für das jeweilige Label wird eine Label-Policy (Richtlinie) erstellt, die ein oder mehrere Label für Benutzer in einer Organisation veröffentlicht. Alternativ erstellen Sie eine automatische Label-Policy, welche Label auf der Grundlage definierter Kriterien auf Inhalte anwenden kann. Darüber hinaus benötigen Sie eine Policy-Regel (oder AutoLabelling Policy Rule), die festlegt, für wen die Label veröffentlicht werden.
Label -> Richtlinie -> Regel
AutoLabelling: Ein automatisierter, maschinenlogikgesteuerter Prozess, durch den Sensitivitätskennzeichnungen auf Inhalte in einem Tenant angewendet werden, sei es in SharePoint, OneDrive oder Exchange-E-Mails. Dieses komplexe Thema liegt außerhalb des Rahmens dieses Artikels, in dem wir lediglich die Grundlagen von Labels behandeln.
Microsoft hat den Prozess der Erstellung von Labels stetig vereinfacht und die Benutzerfreundlichkeit bei der Verwaltung von Labels verbessert. Es wurde sowohl die Webschnittstelle (Purview Compliance Portal) als auch das PowerShell-Modul des Security and Compliance Centers verbessert. PowerShell bietet eine einzigartige und leistungsstarke Schnittstelle für die Verwaltung von Labeln, sei es für die Erstellung, Verwaltung oder das Reporting. Es lohnt sich, ein bisschen Zeit zu investieren, den Umgang mit Labels zu lernen und diese dann anzuwenden – die Zeit sparen Sie sich in Zukunft, wenn alles automatisch läuft.
Ein wichtiger Aspekt ist die Planung. Wenn Sie Label auf Dokumente in Ihrem Tenant oder Unternehmen anwenden wollen, investieren Sie in gute Planung. Welche Ziele sollen verfolgt werden? Wer wird davon betroffen sein? Vergessen Sie die Kommunikation nicht. Machen Sie also Ihre Hausaufgaben, bevor Sie Labels erstellen! Entscheiden Sie sich für Farbschemata, wenn Sie diese Funktion verwenden. Vermeiden Sie kryptische Namen und versetzen sich bei der Namensgebung kurz in die Lage der Endnutzer. Erstellen Sie FAQs, eine einfach zugängliche Seite mit den häufigsten Fragen, damit die Nutzer die erstellten Label richtig verwenden können.
Je nach Anforderung an das Label kann die Komplexität beim Konfigurieren variieren.
Brechen Sie die Anforderungen herunter auf den genauen Use Case und darauf, welche Nutzer das jeweilige Label einmal verwenden werden, und zuletzt ob und wenn ja welche visuelle Hilfe zur Verfügung gestellt werden. Einfache Labels können schon mit sehr wenig PowerShell-Code erstellt werden:
New-Label -DisplayName 'Confidential' -Name 'Confidential'
New-Label -DisplayName 'vertraulich' -Name 'vertraulich'
Mit diesem Einzeiler haben wir nun ein einfaches Label mit dem Namen "Confidential" oder "vertraulich", dessen Name sowohl für den Administrator als auch für den Endbenutzer sichtbar ist. Es werden keine Einstellungen wie Verschlüsselung, Farben oder andere Einstellungen konfiguriert. Dieses neue Label kann auf Dokumente angewendet werden, hat aber eher dekorativen Charakter. Wie bereits angedeutet, gibt es weitere Optionen und Einstellungen, die mit Labeln verwendet werden können, um sie funktioneller zu gestalten.
Das Verschlüsseln von Dokumenten und E-Mails ist eine beliebte und wichtige Funktion von Labels in Microsoft 365, und mit PowerShell können wir eine Reihe von Parametern festlegen, um die Nützlichkeit eines Labels zu erweitern.
EncryptionDoNotForward:
Aktiviert den Do-Not-Forward-Schutz für das Objekt, auf das das Label angewendet wird. Erfordert, dass EncryptionEnabled auf $True gesetzt ist.
EncryptionDoubleKeyEncryptionUrl:
In der öffentlichen Vorschau. Es wird verwendet, um das Label auf die Double Key Encryption-Endpunkt-URL für diesen Verschlüsselungstyp zu verweisen.
EncryptionEnabled:
Der Standardwert (default value) ist $False und muss auf $True gesetzt werden, damit Verschlüsselung in einem Label verwendet werden kann.
EncryptionOfflineAccessDays:
Gibt die Anzahl der Tage an, an denen ein Benutzer offline sein kann und nicht eincheckt, damit die Verschlüsselung zugelassen wird. Erfordert, dass EncryptionEnabled auf $True gesetzt ist.
EncryptionPromptUser:
Standardmäßig $False, wenn auf $True gesetzt, können Benutzer Berechtigungen für Word-, Excel- und PowerPoint-Dokumente festlegen. Erfordert die Einstellung von EncryptionEnabled auf $True.
EncryptionProtectionType:
Erlaubte Werte sind Template, RemoveProtection und UserDefined. Verwenden Sie diese Option, um einem Dokument einen AIP-Vorlagenentfernungsschutz zuzuweisen oder einen benutzerdefinierten Schutz zuzuweisen. Erfordert, dass EncryptionEnabled auf $True gesetzt ist.
EncryptionRightsDefinitions:
Verwenden Sie diesen Parameter, um granulare Rechte für dieses Label zu vergeben. Erfordert, dass EncryptionEnabled auf $True gesetzt ist.
EncryptionContentExpiredOnDateInDaysOrNever:
Legt ein Ablaufen von "niemals" oder nach einer bestimmten Anzahl von Tagen fest. Erfordert die Einstellung von EncryptionEnabled auf $True.
Einige der verfügbaren Parameter sind lediglich für die Verwendung durch Microsoft reserviert, verwenden Sie diese also nicht für Ihre eigenen Label:
EncryptionEncryptOnly und EncryptionLinkedTemplateId. Außerdem ist ein Parameter 'EncryptionAipTemplateScopes' nur mit AIP Classic zu verwenden, was vermieden werden sollte, da diese Funktion in Microsoft 365 veraltet ist.
New-Label -DisplayName 'InternalUseOnly' -Name 'InternalUseOnly' -EncryptionEnabled $True -EncryptionDoNotForward $True
New-Label -DisplayName 'RnD-OfflineAccess' -Name 'RnD-OfflineAccess' -EncryptionEnabled $True -EncryptionOfflineAccessDays 35 -ToolTip 'R&D Department use - 35 days of Offline Access'
Neben der Verschlüsselungsfunktion von Labeln, die die Benutzer sehen können oder auch nicht, gibt es auch Optionen für das Hinzufügen von visuellen Hinweisen zu Labeln. Diese lassen sich in drei Kategorien einteilen:
ApplyContentMarkingHeaderText,
ApplyContentMarkingHeaderAlignment,
ApplyContentMarkingHeaderEnabled,
ApplyContentMarkingHeaderFontColor,
ApplyContentMarkingHeaderFontSize,
ApplyContentMarkingHeaderMargin,
ApplyContentMarkingHeaderFontName
ApplyContentMarkingFooterFontSize,
ApplyContentMarkingFooterMargin,
ApplyContentMarkingFooterAlignment,
ApplyContentMarkingFooterText,
ApplyContentMarkingFooterFontColor,
ApplyContentMarkingFooterEnabled,
ApplyContentMarkingFooterFontName
ApplyWaterMarkingFontSize,
ApplyWaterMarkingFontName,
ApplyWaterMarkingFontColor,
ApplyWaterMarkingText,
ApplyWaterMarkingLayout,
ApplyWaterMarkingEnabled
Diese drei visuellen Arten der Markierung haben Gemeinsamkeiten, die ein einheitliches Erscheinungsbild ermöglichen, je nachdem, welche davon in einem neu erstellten Label verwendet werden. Diese Gemeinsamkeiten sind die Schriftfarbe, die Größe und der Name sowie die Ausrichtung und die Ränder. Nachstehend finden Sie einige Beispiel-Label mit Kopf- und Fußzeilen sowie Wasserzeichen:
New-Label -DisplayName 'Internal Only' -Name 'Internal Only' -ApplyWaterMarkingEnabled $True -ApplyWaterMarkingFontSize 20 -ApplyWaterMarkingFontName 'Times New Roman' -ApplyWaterMarkingFontColor #515A5A -ApplyWaterMarkingLayout Diagonal -ApplyWaterMarkingText 'INTERNAL ONLY' -Tooltip 'Use this Label for documents that are not for sharing outside the company, even with partners.'
New-Label -DisplayName 'Partner Collaboration' -Name 'Partner Collaboration' -ApplyContentMarkingHeaderEnabled $True -ApplyContentMarkingHeaderAlignment 'Center' -ApplyContentMarkingHeaderFontColor '#3498DB' -ApplyContentMarkingHeaderFontSize 10 -ApplyContentMarkingHeaderFontName 'Comic Sans' -ApplyContentMarkingHeaderText 'INTERNAL ONLY' -Tooltip 'Use this Label for documents that are intended for partner collaboration.'
Microsoft 365 ist eindeutig ein multinationaler Dienst, der Nutzer auf der ganzen Welt hat, die andere Sprachen als Englisch sprechen. Um diesen Nutzern entgegenzukommen und die Label an einem bestimmten Ort zu verwenden, stellt Microsoft einen Parameter namens 'LocalSettings' zur Verfügung, der diese Anpassung ermöglicht. Die unterstützten Sprachen finden Sie in der Dokumentation von Microsoft – Language identifiers and OptionState Id values in Office 2016. Mit dieser Einstellung können Sie den Anzeigenamen und die QuickInfo, die der Benutzer sieht, in seine lokale Sprache ändern. Das funktioniert nur mit den von Office unterstützten Sprachen und auch nur dann, wenn nutzerseitig die Änderung in der App vorgenommen wurde, sprich eine andere Sprache ausgewählt worden ist.
Wie funktioniert dies in PowerShell? Sehen Sie sich zunächst das in der Get-Help bereitgestellte Beispiel für das Cmdlet New-Label an:
Erstellen Sie dann Ihr eigenes Cmdlet, basierend auf der benötigten Sprache. In unserem Beispiel unten ist es Englisch und Französisch für eine Organisation, die in Quebec, Kanada, und Miami, Florida, USA, tätig ist:
New-Label -DisplayName 'Confidential' -Name 'Confidential' -LocaleSettings '{"localeKey":"DisplayName","Settings":[{"Key":"en-us","Value":"Confidential"},{"Key":"fr-FR","Value":"Confidentiel"}]}' , '{"localeKey":"tooltip","Settings":[{"Key":"en-us","Value":"For internal and email documents only."},{"Key":"fr-FR","Value":"Uniquement pour les documents internes et les e-mails."}]}'
Achten Sie bei der Erstellung des obigen Textes auf Ihre Befehle, Klammern und Benennungen, da diese für den Einzeiler wichtig sind.
Neben den in der Get-Help für die Label-Cmdlets aufgeführten Einstellungen gibt es erweiterte Einstellungen, die nicht in der grafischen Benutzeroberfläche, sondern nur über PowerShell verfügbar sind. Es gibt unglaublich viele verfügbare Einstellungen, die konfiguriert werden können, wir können hier nur ein paar abdecken. Weiter unten folgt ein Link zu den restlichen Einstellungen:
Set-Label -Identity 'Confidential' -AdvancedSettings @{Color='#111111'}
Set-LabelPolicy -Identity Confidential -AdvancedSettings @{ReportAnIssueLink="mailto:ithelpdesk@domain.com"}
Hier finden Sie den Link zur 'Microsoft Documentation' (EN) (Hier die Dokumentation auf Deutsch)
PowerShell ermöglicht auch die Änderung von Bezeichnungen, wenn eine Änderung erforderlich ist oder beim Erstellen einer Bezeichnung ein Fehler gemacht wurde. Die für das Cmdlet 'New-Label' verfügbaren Parameter werden in ähnlicher Weise im Cmdlet 'Set-Label' angeboten, das eine breite Palette von Änderungen am Label ermöglicht. Mit dem Cmdlet 'Set-Label' können wir ToolTips benutzerfreundlicher gestalten, Farben anpassen und vieles mehr. Im Folgenden finden Sie einige Beispiele dafür:
Set-Label -Identity 'Confidential' -AdvancedSettings @{Color='#F1FC03}
Set-Label -DisplayName 'Partner Collaboration' -ToolTip 'Use this Label for partner collaboration documents.'
Natürlich gibt es noch mehr Optionen, diese beiden waren sehr praxisnahe Beispiele für Änderungen, die nach der Erstellung des Labels vorgenommen werden.
Nachdem wir nun einige Label zur Verfügung haben, können wir damit beginnen, diese Label mit Policies zu versehen. Je nach Komplexität des Labels und Szenarios ist eine Label-Policy recht einfach zu erstellen. Die Funktionen New-LabelPolicy und Set-LabelPolicy ermöglichen die Festlegung von Datenbereichen, die Ausnahme oder Auswahl von bestimmten Bereichen sowie die Kombination mehrerer Labels zu einem ganzen, auf das die Benutzer zugreifen können. Der einfachste Ansatz besteht darin, zwei zuvor erstellte Labels wie folgt global zu veröffentlichen:
New-LabelPolicy 'GlobalLabels' -Labels 'Confidential','Internal Only'
Sie können die Label auch auf bestimmte Exchange-Target zuschneiden, etwa so:
New-LabelPolicy 'Labels for Damian' -Labels 'Confidential','Internal Only' -ExchangeLocation damian@practicalpowershell.com
Damit haben Sie sich für die Veröffentlichung von Labels entschieden, die nun in E-Mails, Dokumenten und mehr verwendet werden können. Wenn ein Label von den Benutzern verwendet wurde, ist es besser, die Policy zu entfernen und das Label zu belassen, da das Entfernen eines angewendeten Labels Fehler verursacht, die für die Benutzer sichtbar sind und zu Problemen/Helpdesk-Anrufen führen können.
Genauso wichtig wie das Erstellen und Veröffentlichen von Labeln ist auch das Überprüfen und Dokumentieren von Labeln als Teil Ihrer IT-Prozesse und auch aus aus Gründen der Compliance. Die Cmdlets Get-Label und Get-LabelPolicy sind nützlich, um Listen dieser Objekte aus einem Tenant abzurufen und können zur Dokumentation, Überprüfung oder Prüfung der aktuellen Konfiguration verwendet werden. Einige wichtige Eigenschaften eines Labels sind Einstellungen, LabelActions, Bedingungen, LocalSettings, ToolTip und ContentType.
Get-Label | fl Settings,LabelActions,Conditions,LocalSettings,ToolTip,ContentType
Get-Label | Where LabelActions -ne $Null | fl Settings,LabelActions,Conditions,LocalSettings,ToolTip,ContentType
Get-Label | Where ContentType -ne 'File, Email' | fl Settings,LabelActions,Conditions,LocalSettings,ToolTip,ContentType
Mit dem Cmdlet Get-LabelPolicyRule können Sie, wie mit dem Cmdlet Get-Label, die in der Label-Policy verwendeten Einstellungen zu Validierungs- und/oder Dokumentationszwecken exportieren:
Get-LabelPolicy | ft Type,Settings,Labels,ScopedLabels,PolicySettingsBlob,UPELabelRules,*location
Get-LabelPolicy | fl Name,Type,*Labels,Settings,*location,*exception
Beachten Sie, dass einige dieser Felder sehr lang werden können und möglicherweise erweitert werden müssen, um alle Einstellungen korrekt anzuzeigen:
(Get-LabelPolicy 'Teams Private Policy').Settings | fl
Das Entfernen von Labeln ist zwar möglich, sollte aber immer mit Vorsicht geschehen. Wenn Label angewandt wurden und das angewandte Label entfernt wird, kommt es zu einem "orphaned Label scenario" (zu verwaisten Labeln), d. h. die Label-Informationen bleiben im Dokument erhalten, sind aber für den Client nicht mehr sichtbar. Wenn das Label nicht angewendet wurde, ist das Entfernen des Labels in Ordnung. Beispiele für das Entfernen von Labeln und Label-Richtlinien - um eine Kennzeichnung zu entfernen, müssen wir sicherstellen, dass sie nicht Teil einer Kennzeichnungsrichtlinie ist:
Get-LabelPolicy | Ft Name,Labels
Die untere Zeile dieser Ausgabe zeigt eine Richtlinie mit dem Namen 'Test44 Label Policy', die ein Label mit dem Namen 'test44' enthält, und beide wurden in einem Test von Features in Labeln verwendet. Jetzt werden das Label und die damit verbundene Label-Richtlinie nicht mehr benötigt. Wie können wir beide entfernen? Zunächst müssen wir die Richtlinie entfernen:
Remove-LabelPolicy 'Test44 Label Policy'
Sobald die Richtlinie entfernt ist, können wir auch das Label entfernen:
Remove-Label test44
In beiden Fällen werden Sie aufgefordert, das Entfernen zu bestätigen. Denken Sie daran, dass das Entfernen eines Labels nur als letzter Ausweg erfolgen sollte, da es negative Auswirkungen auf die User Experience haben kann.
Wie wir gesehen haben, bietet PowerShell hilfreiche Cmdlets und eine Syntax zum Erstellen einer Reihe von Labeln, die von einer Organisation verwendet werden können. Ein weiterer Vorteil der PowerShell ist die Erstellung einer angemessenen Dokumentation von Labeln und Richtlinien, die in einer Umgebung verwendet werden. Mit PowerShell lässt sich auch feststellen, welche Label aktiv oder inaktiv sind, um diese zu verwenden oder gegebenenfalls zu bereinigen. Darüber hinaus können erweiterte Einstellungen, die in der grafischen Benutzeroberfläche nicht verfügbar sind, mit PowerShell konfiguriert werden - dazu gibt es eine gute Dokumentation von Microsoft. Denken Sie daran, dass jedes Label/jede Label-Richtlinie vor dem Einsatz im Produktivsystem vollständig überprüft werden sollte. Es ist viel einfacher, ein Problem im Vorfeld mit einer kleinen Testgruppe zu beheben.
Sie möchten mehr erfahren? Nehmen Sie am nächsten Webinar teil.
PowerShell Skripte sicher auszuführen ist in der Administration komplexer IT Infrastruktur erfolgsentscheidend. Unter anderem müssen die erforderlichen Credentials sicher verwahrt und verwaltet werden.
PowerShell besitzt bereits umfangreiche Sicherheitsfeatures, und mit ScriptRunner werden diese um sichere Delegation und zentralem Skript und Credentials Management erweitert.
Dieses Webinar richtet sich an Administratoren, IT- und DevOps-Professionals, PowerShell-Entwickler und IT-Leiter.
Wir freuen uns darauf, Sie als Webinar-Teilnehmer begrüßen zu dürfen!
Wenn Sie an dem Termin nicht teilnehmen können, kein Problem: Melden Sie sich an und wir senden wir Ihnen im Nachgang einen Link zur Webinar-Aufzeichnung.
Bitte beachten Sie, dass Sie Ihre Email Adresse während des Anmeldeprozesses per Email bestätigen müssen, um die Aufzeichnung zu erhalten.
Die Teilnahme an all unseren Webinaren ist kostenlos.
Sep 30, 2024 by Frank Kresse
Wir haben unser neuestes ScriptRunner-Update, Version 7.1, veröffentlicht. Dieses Update ist vollgepackt mit...
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...
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".