PowerShell – Skripting mit PowerShell Aufbaukurs
Komplexe PowerShell-Projekte professionell strukturieren, eigene Module entwickeln und moderne DevOps-Workflows umsetzen. Der Praxis-Workshop PowerShell – Skripting mit PowerShell Aufbaukurs baut direkt auf unseren Einsteiger- und Kompaktkursen auf. Sie lernen, wie Sie anspruchsvolle Automatisierungsprojekte sauber strukturieren, objektorientiert programmieren und performant ausführen.
Neben modernen Entwicklungsmethoden wie der Nutzung von Visual Studio Code, Git-Versionierung und automatisierter Testausführung mit Pester bietet dieses Seminar viel Zeit für das praktische Schreiben eigener Skripte. Gearbeitet wird primär mit PowerShell 5.1 und PowerShell 7 unter Windows, wobei auch plattformübergreifende Ansätze behandelt werden.
Teilnahmevoraussetzung: Solide Grundkenntnisse entsprechend unseres Kurses „PowerShell – Admin Kompaktkurs für Skripting-Einsteiger“ oder praxisbewährte Erfahrung in der Administration via PowerShell.
Die Schulungsinhalte im Detail:
- Refresher Grundlagen: Kompakte Zusammenfassung der wichtigsten PowerShell-Konzepte (Pipeline, Objekte, Variablen), um alle Teilnehmenden auf denselben Wissensstand zu bringen.
- Skripte, Funktionen & Modulentwicklung: Skriptblöcke nutzen, wiederverwendbare Advanced Functions aufbauen und saubere Modulstrukturen (`.psm1`, `.psd1`) für das gesamte Team erstellen.
- Objekte, Datentypen & eigene Klassen: Tiefe Integration in das .NET-Framework verstehen, statische Methoden aufrufen, C#-Code mittels Add-Type einbinden und eigene Klassen in PowerShell programmieren.
- Professionelle Skriptentwicklung & DevOps-Methoden: Arbeiten mit Visual Studio Code, Quellcode-Versionierung mit Git (lokal & Server), automatisierte Code-Tests mit Pester schreiben und einfache CI/CD-Pipelines aufbauen.
- Reguläre Ausdrücke (Regex): Komplexe Textmuster erkennen, Protokolldateien analysieren, Daten gezielt extrahieren und vorhandene Kommandozeilentools in saubere Cmdlets überführen.
- Parallelisierung & Performance: Single-Threaded-Einschränkungen umgehen: Hintergrundaufgaben mit PowerShell Jobs ausführen und leichtgewichtige Multithreading-Lösungen mit Runspaces und ForEach-Object -Parallel umsetzen.
- Grafische Oberflächen (GUIs) erstellen: Nutzung von .NET-Grafikbibliotheken für administrative Werkzeuge – einfache Oberflächen mit Windows Forms und WPF bauen oder moderne Web-Interfaces mittels Pode bereitstellen.
- Sicherheit, Zertifikate & Verschlüsselung: Skripte und Code digital signieren, eigene Zertifikate erstellen, Anmeldeinformationen sicher verschlüsseln sowie PowerShell-Sicherheitsarchitekturen und erweitertes Remoting konfigurieren.
- Webdienste & Microsoft Graph API: REST-APIs, OAuth2, JSON Web Tokens (JWT) und HTTP-Anfragen verstehen. Cloud-Ressourcen in Microsoft Entra ID, Exchange Online, SharePoint und Teams effizient über die Graph API verwalten.
Bei den Trainings von Netz-Weise erwarten Sie echte Praxisworkshops. Unsere zertifizierten Referenten vermitteln Ihnen tiefgehendes Wissen direkt aus der Praxis – wahlweise vor Ort in unserem Schulungszentrum in Hannover, als interaktives Live-Online-Training oder als maßgeschneiderte Inhouse-Schulung.
Kursinhalt
Refresher Grundlagen
In diesem Modul werden die Grundlagen von Powershell in kurzer Form zusammengefasst, um alle Teilnehmer auf den gleichen Stand zu bringen.
- Powershell Skriptblöcke, Funktionen und Skripte
- Module erstellen
- Objekte, Datentypen und Klassen in Powershell
Skripte professionell entwickeln
Diese Kurseinheit führt in die professionelle Skript-Entwickung ein. Neben der Nutzung des VS Code wird auf die Versionierung mit git lokal und mit einem Git-Server eingegangen. Außerdem werden moderne Entwicklungs-Methoden wie Code-Tests mit Pester und CI/CD-Pipelines bearbeitet.
- Einführung in das Skripting mit Visual Studio Code
- Skripte versionieren mit Git
- Skripttests schreiben mit Pester
- eine einfache CI/CD-Pipeline mit Powershell bauen
Powershell und das .net-Framework
Powershell baut auf dem .net Framework auf. Dieses Modul beleuchtet die Hintergründe und zeigt, wie man von Powershell direkt auf das .net Framework zugreifen und .net Code in Powershell integrieren kann.
- statische Methoden und Eigenschaften aus Powershell-Klassen aufrufen
- C#-Code mit Add-Type in Powershell-Skripte integrieren
- In Powershell eigene Klassen programmieren
Reguläre Ausdrücke
Reguläre Ausdrücke werden verwendet, um komplexe Textmuster zu erkennen und zu extrahieren. Diese Unterrichtseinheit führt in die Verwendung von regulären Ausdrücken in Powershell ein.
- Einführung in das Schreiben von regulären Ausdrücke
- Textdaten analysieren mit regulären Ausdrücken
- Textmuster aus Text extrahieren
- Kommandozeilentools in Cmdlets umwandeln
Parallelisieren von Aufgaben
Powershell ist grundsätzlich Single-Threaded, kann also immer nur eine Aufgabe nacheinander ausführen. Mit Powershell-Jobs und Runspaces kann man diese Einschränkung umgehen.
- Cmdlets als Powershell-Job ausführen
- leichtgewichtige Parallelisierung mit Powershell Runspaces
Grafische Oberflächen erstellen
Mit dem Zugriff auf das .net Framework hat Powershell auch Zugriff auf alle von Microsoft zur Verfügung gestellten Grafikbibliotheken. Dieses Modul zeigt, wie man das in Powershell nutzen kann, um einfache grafische Oberflächen (GUIs) zu bauen, um die Nutzung von Skripten zu vereinfachen.
- einfache grafische Oberflächen mit Windows Forms bauen
- einfache grafische Oberflächen mit WPF (Windows Presentation Foundation)
- Mit Pode eine Website als grafische Oberfläche implementieren
Sicherheit
Dieses Modul vermittelt einen Einstieg in den sicheren Betrieb von Powershell. Für eine ausführliche Betrachtung der Powershell-Sicherheitsfunktionen bieten wir außerdem den Kurs "Powershell Security - Powershell sicher betreiben und überwachen" an.
- Zertifikate erstellen mit Powershell
- Skripte und Code digital signieren
- Daten und Anmeldeinformationen mit Verschlüsselung sicher ablegen
- PowerShell-Sicherheits-Architektur (Sicherheitseinstellungen, notwendige Remoting-Einstellungen)
- erweitertes Powershell-Remoting und Fernabfragen
Webdienste und Microsoft Graph API
Die Microsoft Graph-API stellt eine standardisierte Web-Schnittstelle zur Abfrage und Steuerung aller Microsoft Clouddienste bereit. Dieses Modul führt in die Powershell Graph Cmdlets ein, über die sich die Administration per Powershell erledigen lässt, und beschreibt außerdem den Zugriff auf Webdienste.
- Zugriff auf Webdienste und Websites mit Powershell
- HTTP, OAuth2 und JSON Webtokens erklärt
- Die Microsoft Graph API
- Entra ID mit der Graph API verwalten
- Zugriff auf Exchange Online, Sharepoint und Teams
Anforderungen
Ziel
zzgl. MwSt.