Mit der PowerShell ist es möglich, recht umfassend Berechtigungen in Windows zu steuern. Dabei lassen sich auch NTFS-Rechte, Zugriffe auf Freigaben und Gruppenmitgliedschaften festlegen: mit einzelnen Cmdlets oder auch mit Skripten.
Über entsprechende Cmdlets können Windows-Berechtigungen detailliert in der PowerShell gesteuert werden.
Der Beitrag „Berechtigungen in Windows mit der PowerShell steuern“ zeigt weitere Möglichkeiten. Im folgenden Beitrag vertiefen wir diese Möglichkeiten noch weiter und zeigen, wie sich die verschiedenen Cmdlets miteinander kombinieren lassen.
Verschiedene Cmdlets steuern die Berechtigungen in Windows
Für die Verwaltung von Berechtigungen stehen zum Beispiel folgende Cmdlets zur Verfügung:
„Get-Acl“: liest Zugriffssteuerungslisten (ACLs) von Objekten wie Dateien, Verzeichnissen oder Registry-Schlüsseln.
„Set-Acl“: ändert oder passt die Berechtigungen eines Objekts durch Modifikation der ACLs an.
„New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule“: erstellt ein AccessRule-Objekt zur Definition von Datei- und Verzeichnisberechtigungen.
„Get-ADUser“: ruft Informationen über AD-Benutzer ab.
„Set-ADUser“: ändert Eigenschaften von AD-Benutzern, einschließlich Berechtigungen.
„Get-ADGroup“: ermöglicht Abrufen von Informationen zu AD-Gruppen.
„Add-ADGroupMember“: fügt Benutzer zu AD-Gruppen hinzu.
„Get-ADOrganizationalUnit“: ermöglicht Zugriff auf Organisations-Einheiten (OUs) in Active Directory.
„Set-ADOrganizationalUnit“: ändert Eigenschaften von OUs, einschließlich Berechtigungen.
„Get-ADPermission“ und „Add-ADPermission“: speziell für den Zugriff und die Verwaltung von Berechtigungen in Exchange-Umgebungen.
Die Cmdlets lassen sich auch miteinander kombinieren und mit dem „Pipe“-Zeichen („|“) zusammenfassen, sodass sich auch komplexere Befehle umsetzen lassen.
Verwalten von Datei- und Verzeichnisberechtigungen mit Get-Acl und Set-Acl
Das Lesen und Ändern von Zugriffsrechten auf Dateien und Verzeichnissen erfolgt durch die Kombination von „Get-Acl“ und „Set-Acl“:
In diesem Beispiel werden vererbte Berechtigungen von „C:\MeinVerzeichnis“ entfernt. Nehmen wir zum Beispiel das Cmdlet „Get-Acl“, das verwendet wird, um die Zugriffssteuerungsliste (ACL) eines bestimmten Pfades abzurufen. Bei Kombination mit „New-Object“ und „Set-Acl“ können Sie neue Berechtigungseinträge erstellen und diese einem Verzeichnis oder einer Datei zuweisen:
Hier wird die Beschreibung für den Benutzer „jsmith“ aktualisiert. In einem Active-Directory-Szenario kann die Kombination von „Get-ADUser“, „Get-ADGroup“ und „Add-ADGroupMember“ verwendet werden, um Benutzer zu finden, die einem bestimmten Kriterium entsprechen, und sie dann zu einer Gruppe hinzuzufügen:
Im obigen Code werden spezifische Berechtigungen für das Postfach von „jsmith“ abgerufen, und „John Doe“ erhält Vollzugriff. In einer Exchange-Umgebung kann die Kombination von „Get-ADPermission“ und „Add-ADPermission“ dazu verwendet werden, nicht vererbte Berechtigungen für ein Postfach abzurufen und dann einem anderen Benutzer Zugriffsrechte auf dieses Postfach zu gewähren:
Cmdlets miteinander kombinieren und Skripte erstellen
Das Kombinieren mehrerer der genannten Cmdlets in einem einzigen Befehl oder Skript kann zu komplexen und maßgeschneiderten Verwaltungsaufgaben führen. Unten ist ein Beispiel für ein PowerShell-Skript, das mehrere dieser Cmdlets nutzt:
# Abfragen von Benutzern aus einer bestimmten OU$users = Get-ADUser -Filter * -SearchBase "OU=Verkauf,DC=domain,DC=com"# Erstellen einer Gruppe für Verkaufsteam$group = New-Object -TypeName "Microsoft.ActiveDirectory.Management.ADGroup" -Property @{ GroupCategory = "Security" GroupScope = "Global" Name = "Verkaufsteam" SamAccountName = "Verkaufsteam"}$group = New-ADGroup @group -Path "OU=Gruppen,DC=domain,DC=com"# Hinzufügen der Verkaufsbenutzer zur Gruppe$users | ForEach-Object { Add-ADGroupMember -Identity $group -Members $_ }# Anwenden von ACLs auf ein Verzeichnis, das für das Verkaufsteam bestimmt ist$acl = Get-Acl -Path C:\VerkaufVerzeichnis$accessRule = New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule -ArgumentList "Verkaufsteam", "FullControl", "Allow"$acl.AddAccessRule($accessRule)Set-Acl -Path C:\VerkaufVerzeichnis -AclObject $acl# Änderung der Adresse der Verkauf OU$ou = Get-ADOrganizationalUnit -Filter 'Name -eq "Verkauf"'Set-ADOrganizationalUnit -Identity $ou -StreetAddress "Neue Straße 123"# Hinzufügen von Exchange-Berechtigungen für Verkaufsleiter$mailbox = "verkaufsleiter@domain.com"Get-ADPermission -Identity $mailbox | Where-Object { $_.IsInherited -eq $false }Add-ADPermission -Identity $mailbox -User $group -AccessRights FullAccess
Dieses Skript führt mehrere Verwaltungsaufgaben gleichzeitig aus. Es fragt alle Benutzer aus einer bestimmten OU ab, erstellt eine neue AD-Gruppe für das Verkaufsteam, fügt diese Benutzer zur Gruppe hinzu, legt Berechtigungen für ein Verzeichnis fest, das für das Verkaufsteam bestimmt ist, aktualisiert die Adresse der Verkauf OU und fügt Exchange-Berechtigungen für den Verkaufsleiter hinzu.
Aktuelles eBook
Storage-Security – wie sichern Unternehmen ihre Daten ab?
eBook „Storage-Security“
(Bild: Storage-Insider)
Sich mit der Sicherheit von Storage-Systemen zu beschäftigen, ist heute notwendiger denn je. Neun von zehn Unternehmen wurden bereits mit Ransomware angegriffen. Einen Überblick über Schutzmaßnahmen und -technologien bietet dieses eBook.
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.