Der Inside-Out-Sicherheits Blog - Der Inside-Out-Sicherheits Blog

Skripting-Tutorial in Windows-PowerShell für Anfänger

Geschrieben von Michael Buckbee | Apr 12, 2022 3:51:28 PM

Windows PowerShell ist ein leistungsfähiges Tool zur Automatisierung von Aufgaben und zur Vereinfachung der Konfiguration. Damit lassen sich fast alle Aufgaben im Windows-Ökosystem automatisieren, auch für Active Directory und Exchange. Daher verwundert es nicht, dass PowerShell unter Systemadministratoren und erfahrenen Windows-Benutzern zu einem beliebten Tool geworden ist.

In unserem PowerShell-Tutorial haben wir Ihnen gezeigt, wie man die nützlichsten PowerShell-Tools verwendet. Nun ist es an der Zeit für den nächsten Schritt: diese Tools aus Skripten einsetzen, die mit nur einem Klick ausgeführt werden können. Dieses PowerShell-Skripting-Tutorial zeigt Ihnen, wie Sie einfache Skripte in PowerShell schreiben und ausführen, wodurch Sie letztendlich viel Zeit sparen können. 

Holen Sie sich den kostenlosen Videokurs für PowerShell und Active Directory.

Was ist die PowerShell-Sprache?

Die PowerShell-Sprache ist eine von Microsoft entwickelte proprietäre Programmiersyntax. In erster Linie dient sie dazu, Systemadministratoren die Automatisierung von Aktionen und Konfigurationen zu ermöglichen. Die Sprache basiert auf objektorientierten Standards, kann aber nur in Windows-Umgebungen verwendet werden. Sie ist Teil des .NET-Frameworks und enthält in der Regel C#-Code, der den Funktionen zugrundeliegt. C#-Kenntnisse sind allerdings keine Voraussetzung, um PowerShell zu erlernen. Am ehesten lässt sich die PowerShell-Sprache mit Perl vergleichen, das in ähnlichen Szenarien in Linux-Umgebungen eingesetzt wird.

In der PowerShell-Sprache wird jede einzelne Funktion als „Cmdlet“ bezeichnet. Ein Cmdlet hat eine oder mehrere Reihen von definierten Aktionen und kann ein .NET-Objekt zurückgeben. Einige der grundlegendsten Cmdlets, die in PowerShell vorkonfiguriert sind, dienen zur Navigation durch eine Verzeichnisstruktur und zum Verschieben oder Kopieren von Dateien.

Was ist die PowerShell ISE?

Neue Cmdlet-Funktionen für PowerShell können in jedem Texteditor oder Textverarbeitungsprogramm geschrieben werden. Die neuesten Versionen des Windows-Betriebssystems enthalten jedoch ein Tool, das als „PowerShell ISE“ (Integrated Scripting Environment, zu Dt. integrierte Skriptingumgebung). Dieses macht das Skripting noch einfacher und robuster.

Wenn Sie die PowerShell ISE zum ersten Mal öffnen, fühlen Sie sich vielleicht an ein Eingabeaufforderungsfenster erinnert. Das Tool enthält jedoch viel mehr Funktionen und Unterstützungsfeatures für das Schreiben von Code. Die PowerShell ISE enthält eine beispielsweise eine vollständige Liste aller gängigen Module und Cmdlets, die Systemadministratoren oft benötigen. Wenn Sie bereit sind, eigene Cmdlet-Funktionen zu schreiben, können Sie mit dem Debugging-Tool in der PowerShell ISE Ihren Code testen, Bugs oder Probleme finden und diese dann beheben. Wie auch andere Coding-Umgebungen ist die PowerShell ISE hochgradig anpassbar. Die Benutzer können das Farbschema, die Schriftart und die Theme zum Schreiben von Skripten auswählen. Neue Skripte, die in der ISE erstellt werden, erhalten die Endung Dateierweiterung „.psi“. Diese kann ausschließlich in PowerShell-Umgebungen ausgeführt werden.

Die Skriptsprache in PowerShell wird Ihnen vertraut vorkommen, wenn Sie bereits mit der Windows-Eingabeaufforderung gearbeitet haben. Das Objekt- und Datenpiping funktionieren hier ähnlich, ebenso beispielsweise der Ping-Befehl:

Die in PowerShell verwendete Syntax ist jedoch meistens deutlich einfacher und leichter zu lesen als die in der Eingabeaufforderung verwendeten Befehle.

Verwendung und Features von Windows PowerShell

Obwohl Windows PowerShell für eine viele verschiedene Zwecke verwendet werden kann, liegt – zumindest für Anfänger – der Hauptnutzen von PowerShell-Skripten in der Systemautomatisierung für die folgenden Zwecke:

  • Arbeiten mit Datei-Batches – ob es sich dabei um die Automatisierung von Backups oder um die Zugriffskontrolle für eine große Anzahl von Dateien auf einmal handelt.
  • PowerShell-Skripte sind auch sehr nützlich zum Hinzufügen und Entfernen neuer Benutzer. Mit einem gut geschriebenen Skript können Sie das automatisch Netzlaufwerke hinzufügen, Sicherheitssoftware aktualisieren und neuen Benutzern den Zugriff auf freigegebene Dateien gewähren.
  • Um diese Aufgaben auszuführen, verwenden Sie verschiedene Schlüsselfunktionen von PowerShell, z. B. Cmdlets und Aliase (die ich weiter unten behandeln werde).

PowerShell starten

Unter Windows 10 lässt sich PowerShell am schnellsten über das Suchfeld starten. Geben Sie in der Taskleiste in das Suchfeld „PowerShell“ ein. Klicken oder tippen Sie dann auf das Ergebnis „Windows PowerShell“.

Um PowerShell als Administrator auszuführen, klicken Sie mit der rechten Maustaste (Touchscreen-Benutzer: tippen und halten) auf das Suchergebnis „Windows PowerShell“ und klicken oder tippen Sie dann auf „Als Administrator ausführen“.

Es gibt noch viele andere Möglichkeiten, eine PowerShell-Konsole zu starten, aber dies ist eine gute Methode für den Anfang.

Grundlegende Features von PowerShell

Wenn Sie noch nicht mit PowerShell vertraut sind, werfen Sie einen Blick auf unser PowerShell-Tutorial, bevor Sie in das PowerShell-Skripting einsteigen. In dieser Anleitung finden Sie Beschreibungen aller grundlegenden Werkzeuge, die Sie für die Arbeit mit PowerShell benötigen. Dazu gehören Cmdlets, Aliase, Hilfebefehle und Pipes.

Sobald Sie die grundlegenden Befehle beherrschen, können Sie mit dem Schreiben von Skripten beginnen. Während Sie dazulernen, können Sie sich auch unsere Anleitungen unter Eingabeoptionen für PowerShell ansehen, sowie die Ressourcen unten in diesem Artikel durchlesen.

Vor dem Ausführen von PowerShell-Skripten

PowerShell-Skripte wie jene, die wir in diesem Tutorial erstellen, werden als .ps1-Dateien gespeichert. Standardmäßig können Sie diese Skripte mit Windows nicht durch einfachen Doppelklick ausführen. Das liegt daran, dass bösartige (oder schlecht geschriebene) Skripte viel unbeabsichtigten Schaden an Ihrem System verursachen können. 

Um ein PowerShell-Skript auszuführen, müssen Sie stattdessen mit der rechten Maustaste auf die .ps1-Datei und anschließend auf „Mit PowerShell ausführen“ klicken. 

Wenn Sie zum ersten Mal mit PowerShell-Skripten arbeiten, funktioniert das möglicherweise nicht. Das liegt daran, dass es eine systemweite Richtlinie gibt, die eine Ausführung verhindert. Führen Sie diesen Befehl in PowerShell aus:

Get-ExecutionPolicy

Sie werden eine der folgenden Ausgaben sehen:

  • Restricted – Es werden keine Skripte ausgeführt. Dies ist die Standardeinstellung in Windows, Sie müssen sie also ändern. 
  • AllSigned – Sie können nur Skripte ausführen, die von einem vertrauenswürdigen Entwickler signiert wurden. Vor der Ausführung eines Skripts werden Sie dazu aufgefordert.
  • RemoteSigned – Sie können Ihre eigenen Skripte oder von einem vertrauenswürdigen Entwickler signierte Skripte ausführen. 
  • Unrestricted – Sie können jedes beliebige Skript ausführen. Diese Option sollte aus offensichtlichen Gründen nicht verwendet werden.

Um mit PowerShell-Skripten arbeiten zu können, müssen Sie diese Richtlinieneinstellung ändern. Sie sollten sie zu „RemoteSigned“ ändern. Das können Sie direkt von PowerShell aus tun, indem Sie den folgenden Befehl ausführen:

Set-ExecutionPolicy RemoteSigned

Nun können Sie anfangen.

Finden von PowerShell-Befehlen

Die Leute lieben PowerShell, weil es einfach sehr leistungsstark ist. Aber die Power in PowerShell beruht auf einer schier unglaublichen Komplexität. Es ist einfach überhaupt nicht möglich bzw. praktisch, sich all die verschiedenen Befehle, Cmdlets, Flags, Filter und anderen Möglichkeiten zu merken, um PowerShell zu sagen, was es machen soll.

Glücklicherweise sind direkt in den Editor einige Tools integriert, die Ihnen dabei helfen können.

Vervollständigung über die Tab-Taste

Sie müssen sich nicht alle verschiedenen Befehle in ihrer exakten Schreibweise merken. Geben Sie beispielsweise get-c im Editor ein und drücken Sie die Tab-Taste – nun schaltet PowerShell durch alle Befehle, die mit Ihrer bisherigen Eingabe beginnen. Das funktioniert in jedem Bereich des Befehls, den Sie aufrufen möchten: im Namen (wie unten gezeigt), aber auch in Flags und Pfaden, die Sie bearbeiten, um Ihr gewünschtes Ergebnis zu erzielen.

Get-Befehl

Die Tab-Vervollständigung funktioniert zwar gut, aber was, wenn Sie den Namen des gesuchten Befehls nicht kennen? In diesem Fall können Sie einen Befehl zum Suchen nach anderen Befehlen verwenden: 

Get-Command 

Bei der Suche nach Befehlen ist es wichtig zu wissen, dass sie immer einer bestimmten Syntax folgen: VERB-SUBSTANTIV. Die Verben sind beispielsweise „Get“, „Set“, „Add“, „Clear“, „Write“ und „Read“. Die Substantive sind jeweils die Dateien, Server oder andere Elemente in Ihrem Netzwerk und in Ihren Anwendungen.

Get-Command ist ein Suchtool, mit dem Sie die auf Ihrem System verfügbaren Befehle entdecken können.

Die Befehlssyntax von PowerShell

Jemand beschrieb die Skriptsprache Perl einmal als „ausführbares Leitungsrauschen“ – ein enorm nützliches Werkzeug mit einer extrem undurchsichtigen Syntax und einer entsprechend schwierigen Lernkurve. 

Die traditionelle Eingabeaufforderung in Windows ist zwar nicht ganz auf diesem Niveau, aber auch nicht allzu weit davon entfernt. Nehmen wir eine alltägliche Aufgabe, beispielsweise alle Dateien in einem Verzeichnis zu finden, deren Namen mit der Zeichenfolge „Foo“ beginnen.

CMD: FOR /D /r %G in (“Foo*”) DO @Echo %G

  • „FOR“ und „DO“ geben an, dass es sich um eine Schleife handelt.
  • Das Flag „/D“ zeigt an, dass wir mit Verzeichnissen arbeiten handelt.
  • Das Flag „/r“ gibt an, dass die Dateien dort ihren Stammpfad haben.
  • Das Muster, das die Menge der zu durchlaufenden Dateien definiert, wird mit „in“ bezeichnet.
  • „@Echo“ weist das Skript an, das Ergebnis jeder Schleife auszugeben.
  • „%G“ ist schließlich der „implizite Parameter“ und wurde gewählt, weil frühere Entwickler bereits die Buchstaben a, d, f, n, p, s, t und x für das Pfadnamensformat verwendet haben. Mit G zu beginnen ist also die herkömmliche Herangehensweise, da man so die größte Menge unbenutzter Buchstaben als Rückgabevariablen erhält (G, H, I, J, K, L, M) – mit anderen Worten: es ist ein unschöner Hack.

Und nun das PowerShell-Äquivalent dazu:

PowerShell: Get-ChildItem -Path C:\Example -Filter ‘Foo*’

Die Ausgabe ist funktionell die gleiche, aber selbst in diesem recht trivialen Beispiel kann man deutlich einfacher verstehen, was genau hier passiert. Es ist sofort ersichtlich, was die einzelnen Elemente des Befehls bewirken und wie man sie ändern kann. Die einzige Sache, die hier nicht ganz offensichtlich ist, ist das Wildcard-Zeichen „*“ (in beiden Beispielen). Dieses gibt an, dass das Muster, anhand dessen Treffer ermittelt werden, mit „Foo“ beginnen muss, aber beliebig enden kann. 

Von hier an wird es immer besser. Sagen wir, Sie möchten wissen, wie Sie nur Dateien (keine Verzeichnisse) im Pfad identifizieren können? Sie könnten nun in die Dokumentation gehen, herumgoogeln und versuchen, es über die Befehlszeilenversion zu regeln. Oder Sie geben in PowerShell „-“ ein, drücken die Tab-Taste drücken und gehen die verschiedenen Flag-Optionen durch, bis die offensichtliche Lösung auftaucht.

Objekteigenschaften statt einer langen Zeichenkette

Server bringen niemandem etwas, wenn sie nicht online sind. Deshalb verbringen die Leute extrem viel Zeit damit, so zu tun, als säßen sie an einem Sonar auf einem U-Boot, und diese Server anzupingen (das Wort „Ping“ kommt tatsächlich aus der Unterseefahrt). 

Die Ausgabe von Ping-Befehlen ist zwar nützlich (und man kann Ping auch in PowerShell verwenden), aber am Ende des Tages ist sie nur eine lange Zeichenfolge – eine Reihe von Buchstaben und Zahlen ohne klar definierte Trennzeichen dazwischen). 

PowerShell verfügt über einen Befehl, der dem Ping-Befehl ähnelt, aber strukturierte Daten zurückgibt, mit denen man leicht arbeiten kann. Dieser Befehl lautet „Test-Connection“. 

Nachfolgend sehen Sie die Ausgabe des Pings eines Servers (mit dem Namen „DC“ im lokalen Netzwerk) und die entsprechende Ausgabe von Test-Connection.

Abgesehen davon, dass sie einfacher zu lesen ist, kann man diese Informationen vor allem problemlos an einen anderen Befehl weitergeben, sie in ein größeres Dienstprogramm integrieren (worauf dieser Kurs insgesamt abzielt) oder sie einfach so anpassen, dass sie mehr Sinn ergeben. 

Ausführen von PowerShell-Skripten

Es gibt zwei Hauptmöglichkeiten, ein PowerShell-Skript zu erstellen:

  1. Die erste Möglichkeit wird Ihnen bekannt vorkommen, wenn Sie bereits mit der Windows-Eingabeaufforderung gearbeitet haben. Sie besteht darin, Skripte direkt im Editor zu schreiben. Öffnen Sie zum Beispiel eine neue Editor-Datei und schreiben Sie: 

Write-Host “Hello World!”

Speichern Sie diese Datei dann als „FirstScript.ps1“.

Sie können das Skript von PowerShell aus mit dem folgenden Befehl aufrufen:

& "X:\FirstScript.ps1"

Die Ausgabe wird Ihnen in PowerShell angezeigt.

  1. Die zweite, deutlich leistungsfähigere Möglichkeit, PowerShell-Skripte zu erstellen, ist die Verwendung der Windows PowerShell ISE (Integrated Scripting Environment). Mit ISE können Sie Skripte ausführen und über eine grafische Benutzeroberfläche debuggen. 

Die ISE bietet außerdem Syntaxhervorhebung, mehrzeilige Bearbeitung, Tab-Vervollständigung, selektive Ausführung und eine ganze Reihe weiterer Funktionen. Sie können sogar mehrere Skriptfenster gleichzeitig öffnen, was überaus praktisch ist, wenn Sie Skripte haben, die andere Skripte aufrufen.

Auch wenn es im Moment ein wenig übertrieben erscheinen mag, lohnt es sich dennoch, von Anfang an direkt mit der ISE zu arbeiten. So können Sie sich schon daran gewöhnen, bevor Sie anfangen, komplexere Skripte zu schreiben. 

Grundlegende Beispiele für PowerShell-Skripte

Nun können Sie anfangen, PowerShell-Skripte zu schreiben. Gehen wir also den Prozess Schritt für Schritt durch.

Beispielskript 1: das Datum abfragen

Fangen wir mit einem einfachen Skript an. Öffnen Sie in der ISE oder im Editor eine neue Datei. Geben Sie Folgendes ein:

Write-Host get-date

Speichern Sie die Datei dann als „GetDate.ps1“.

Sie können das Skript von PowerShell aus mit dem folgenden Befehl aufrufen:

& "C:\GetDate.ps1"

Die Ausgabe wird Ihnen in PowerShell angezeigt. Ganz einfach, oder?

Beispielskript 2: Beenden eines Prozesses erzwingen

Wenn Sie einen Windows-Dienst ausführen, der sich aufgehängt hat, können Sie ihn mit einem PowerShell-Skript beenden. Nehmen wir zum Beispiel an, mein Unternehmen benutzt Lync für die Geschäftskommunikation, es hängt sich jedoch immer wieder auf, und die Prozess-ID von Lync lautet „9212“. Ich kann Lync mit einem Skript beenden.

Dazu erstellen wir eine neue Skriptdatei, genauso wie zuvor. Diesmal geben wir Folgendes ein:

stop-process 9212

Oder

stop-process -processname lync

Speichern Sie die Datei unter dem Namen „StopLync.ps1“, und dann können Sie das Skript folgendermaßen aufrufen:

& "X:\StopLync.ps1"

Dieses Skript kann man dann erweitern, damit es mehrere Prozesse gleichzeitig beendet, indem man einfach weitere Befehle desselben Typs hinzufügt. Sie können auch ein anderes Skript schreiben, wenn Sie gleichzeitig und automatisch mehrere Prozesse starten wollen:

start-process -processname [Ihr Prozessname hier]

Dies ist besonders nützlich, wenn Sie beispielsweise mehrere Netzwerkprozesse gleichzeitig starten möchten und die Befehle nicht alle einzeln eingeben möchten.

Beispielskript 3: Prüfen, ob eine Datei vorhanden ist

Angenommen, Sie müssen mehrere Dateien löschen. Vielleicht möchten Sie zuerst überprüfen, ob die Dateien überhaupt existieren.

Mit „test-path“ können Sie, wie der Name schon vermuten lässt, überprüfen, ob Elemente unter einem Pfad existieren. Es gibt „TRUE“ zurück, wenn alle Elemente vorhanden sind, und „FALSE“, wenn welche fehlen.

Geben Sie einfach den folgenden Befehl ein:

test-Path (und dann den Dateipfad)

Beispielskript 4: Einrichten eines VPNs auf einem neuen Computer

Nun kennen wir die Grundlagen und können ein Skript schreiben, das etwas wirklich Nützliches macht. Für Systemadministratoren besteht einer der Hauptvorteile von PowerShell darin, dass sich den Prozess der Einrichtung neuer Computer automatisieren lässt.

Heute nutzen sowohl Privatpersonen als auch Unternehmen VPNs (virtuelle private Netzwerke) als quasi obligatorische Sicherheitsmaßnahme zum Schutz proprietärer Daten. Alle neuen Computer sollten bei Einrichtung mit einem VPN verbunden werden. Das geht zwar auch manuell, aber genau für solche Aufgaben ist PowerShell perfekt geeignet. Für Anfänger – also für die meisten Leser dieser Anleitung – sind die meisten tauglichen VPN-Services für Ihre Computerumgebung geeignet. Wir können nun ein Skript schreiben, das automatisch einen erstellt und konfiguriert.

Am einfachsten geht das, indem man eine neue Datei öffnet und dann den folgenden Befehl eingibt:

Set-VpnConnection -Name "Test1" -ServerAddress "10.1.1.2" -PassThru

Sie müssen Ihre Serveradresse auf die Adresse Ihres lokalen VPN-Servers setzen, und dank dem Befehl „PassThru“ gibt dieses Skript die Konfigurationsoptionen des VPN zurück. 

Speichern Sie die Datei als „SetVPN.ps1“, und dann sollten Sie es genau so aufrufen können, wie Sie es schon zuvor getan haben: 

& "X:\SetVPN.ps1"

Wenn Sie diesen Befehl nun zum ersten Mal aufrufen, werden möglicherweise ein paar Fehler ausgegeben. Aber das gehört auch zum Lernprozess bei PowerShell. Keine Angst: Wann immer Sie auf einen solchen Fehler stoßen, konsultieren Sie einfach Microsofts offizielle Anleitung für den Befehl „Set-VpnConnection“ und passen Sie die dortigen Beispiele an Ihr System an.

PowerShell-Zeichensetzung

In der folgenden Tabelle sind einige der von uns verwendeten PowerShell-Zeichensetzung zusammengefasst:

Symbol Name Funktion Beispiel
$ Dollarzeichen Deklariert eine Variable $a
= Ist gleich Weist der Variablen einen Wert zu $a=get-date
“” Doppelte Anführungszeichen Doppelte Anführungszeichen werden zur Anzeige von Text verwendet If $a = Monday

 

“Day of the Week: $a”
gibt aus:

Day of the Week: Monday

+ Plus Verkettung $a = November

 

“Day of the Week: ”
+ $a.Dayofweek

Day of the Week: Monday

( ) Klammern Gruppierung zum Erstellen von Argumenten  (get-date).day

Windows-PowerShell-Ressourcen

Nachfolgend finden Sie die neuesten Tutorials, die ich auf eine Top-Ten-Liste zusammengekürzt habe:

Erste Schritte mit PowerShell

  1. PowerShell für Anfänger – Eine Linksammlung für den Einstieg, mit Best Practices, der Befehlszeilensyntax und mehr!
  2. Don Jones‘ Bestseller zu PowerShell, „Learn Windows PowerShell in a Month of Lunches“ (zu Dt. „Windows PowerShell in einem Monat in der Mittagspause lernen“) ist auch als Video verfügbar! Nach 3–4 Monaten Mittagspause mit der Tutorial-Videoreihe werden Sie Verwaltungsaufgaben schneller automatisieren, als Sie es je für möglich gehalten hätten. Übrigens beantwortet der Autor auch Fragen unter powershell.org. Dort gibt es auch viele PowerShell-Ressourcen, -Veranstaltungen und sogar kostenlose E-Books! 
  3. Wenn Sie die MCSA 70-410 Microsoft-Prüfung ablegen möchten, werden diese Karteikarten hilfreich sein: PowerShell-Befehle
  4. Mit PowerShell können Sie mehrere Befehle in einer Zeile aneinanderreihen, mit einer Technik namens Pipelining. Damit werden komplexe Aufgaben deutlich einfacher. Mehr darüber können Sie hier erfahren. 

Konfigurieren und Verwalten von Active Directory

Noch mehr Zeit sparen Sie, wenn Sie lernen, wie man Aktive Directory mit PowerShell konfiguriert und verwaltet. Dazu gibt es diese Ressourcen:

  1. Nutzen Sie PowerShell, um AD nach Konten mit hohen Berechtigungen zu durchsuchen
  2. Verwenden Sie das AD-Modul Cmdlets, um unterschiedliche Verwaltungs-, Konfigurations- und Diagnoseaufgaben in Ihren AD-DS- und AD-LDS-Umgebungen durchzuführen. 
  3. Erstellen Sie ein AD-Dienstprogramm von Grund auf in diesem epischen 3-stündigen PowerShell-Videokurs (er lässt sich mit diesem Code kostenlos freischalten:PSHL) 

Automatisierung von Exchange

Nachdem Sie nun so viel freie zeit gewonnen haben, können Sie doch lernen, wie Sie mit den folgenden Ressourcen Exchange automatisieren:

  1. Wenn Sie ein Exchange-Admin sind, müssen Sie unbedingt diese 5 Skills beherrschen. 
  2. Klicken Sie hier für mehr PowerShell-Tipps für Exchange-Admins. Scrollen Sie dann weiter runter für das wirklich gute Material. 

Noch etwas:

Wir hoffen, dass dieses PowerShell-Skripting-Tutorial für Anfänger Ihnen eine gute Grundlage für den Einstieg in das PowerShell-Skripting bietet. Sobald Sie die Grundlagen der PowerShell-Syntax beherrschen, ist die Arbeit mit Skripten ziemlich einfach: Halten Sie Ihre Skripte einfach organisiert und benennen Sie sie so, dass man leicht versteht, welche Funktion sie haben. So können Sie den Überblick behalten.

Und wenn Sie das Skripting erst einmal beherrschen, sind die Möglichkeiten mit PowerShell wirklich grenzenlos. Schauen Sie sich zum Beispiel unseren Leitfaden zum Active-Directory-Skripting an, um einen Einblick in die Flexibilität von PowerShell zu erhalten.

Zum Schluss allerdings noch eine kleine Warnung: verlassen Sie sich nicht allein auf PowerShell, um Datensicherheit und -zugriff zu verwalten. Selbst wenn Sie sich extrem gut im PowerShell-Skripting auskennen, machen die Komplexität der DSGVO und ähnlicher Gesetze das Datenmanagement einfach zu komplex für ein derart einfaches Tool. Stattdessen sollten Sie mit einem Experten besprechen, wie Sie den Zugriff auf die in Ihren Systemen gespeicherten Daten verwalten können.