Münchner Straße 15, 89073 Ulm
+49 7319 53495-29

Powershell – Advanced

DEep dive kurs – Powershell ADvanced

Zielgruppe

IT Mitarbeiter und Systemadministratoren welche bereits über Vorkenntnisse der Windows Powershell verfügen.

Dauer

Die Kursdauer beträgt 3 Tage.

Level

gehobene Komplexität

Zertifikat

Schulungsteilnehmer erhalten ein Zertifikat.

Preis

2450,- € inkl. MwSt.
Inklusive Verpflegung.

termine

Februar 2020

24febGanzer Tag27Powershell Advanced

Beschreibung

Dieser Deep-Dive-Kurs setzt dort an, wo der Powershell-Intensiv-Kurs endete: erweitertes Scripting mit der Windows Powershell (durch Visual Studio Code).

Zu Begin und als kleine Wiederholung / Auffrischung werden bestehende Powershell Skripte in Advanced Functions überführt. Hierbei wird die Skript-Sturktur erarbeitet, Parameter eingeführt und die Parameter einer Inhaltsprüfung unterworfen (Validate…everything). Kenntnis von regular expressions kann hier von Vorteil sein, ist jedoch keine Voraussetzung. Die einzelnen Parameter werden je nach Bedarf für Pipeline-Input geöffnet (ByPropertyValue / ByPropertyName), sowie der Ausgabewert nach Vorgaben modifiziert / konvertiert.

Ein wichtiger Block in diesem Workshop ist die Verwendung von .NET-Assemblies bzw. von .NET-Accelerators. Durch die verschiedenen Suchmaschinen im Internet bzw. durch einen lokal hinterlegten .NET-Browser können die dazu notwendigen Klassen gesucht und in der Funktion erarbeitet werden. An Beispielen aus der Praxis wird die Anwendung von .NET-Assemblies und -Accelerators erarbeitet, so dass diese Fähigkeit später zur Routineaufgabe im Tagesgeschäft wird.

Soweit die bestehenden Skript modifiert wurde, wird anschließend das Augenmerk auf Controller Scripts gelegt. Hierbei geht es um einen Prozess zur Konsolidierung von Einzelskripten in einem gemeinsamen Haupt-/Eltern-Skript. Controller Scripts gestatten einen modularen Ansatz bei der Erstellung von Skripten und gestatten die Bewegung weg von großen monolitischen Scripten mit endlosen Zeilen von Code. Ebenso bringen Controller Scripts die Möglichkeit mit sich, grafische Oberflächen in Powershell Skripten zu integrieren (ohne die bestehenden Einzelskripte zu ändern) und ebenso nachträglich eine Berichtsfunktion zu integrieren (ebenso ohne die bestehenden Einzelskripte zu verändern).

Ein ausführliches Debugging von Powershell Skripten darf natürlich in diesem Kurs nicht zu kurz kommen. Wir ziehen den „Debug-Kreis“ beginnend bei der ErrorAction (und warum „SilentlyContinue“ eher schlecht ist), über die Write-Verbose-Funktion, weiter zur Write-Debug-Funktion hin zum Setzen von Break-Points. Das Debug-Logging in externe Logdateien ist ebenso fester Bestandteil, sowie das Vermitteln von „Soft-Skills“, wenn man beim Debugging nicht weiter kommt (Stichwort: Therapieknüppel).

Im Intensiv-Kurs hatten die Probanden schon Kontakt mit CSV-Dateien – nun wird der Fokus erweitert um ein strukturiertes Verarbeiten von Informationen im Dateisystem möglich wird: Poweshell und XML-Dateien. An dieser Stelle sei nur knapp erwähnt, dass wir Einfluss auf die Tragödie „Romeo und Julia“ durch eine XML-Datei nehmen.

Die Desired State Configuration ist hier als Ergänzung, wenn nicht gar als valide Alternative zum Werkzeug Group Policy zu sehen (sofern Sie später mit Azure zu tun haben (möchten) und die reine „on premise“-Umgebung verlassen). Mit DSC können Server und Clients durch die Powershell vollständig administriert werden. Dabei erstellen wir gemeinsam eine DSC-Konfiguration und setzen dieses in der großzügig Dimensionierten Workshop-Umgebung um. Passend zum Thema DSC werden parallel auch die Powershell Workflows vorgestellt und umgesetzt.

Der Abschluss von diesem Workshop ist die digitale Signatur von Powershell Skripten oder Powershell Skriptmodulen. Der rein technische Prozess (Set-AuthenticodeSignature) ist hierbei gar nicht so spannend. Eher die Themen, welche dahinter stehen: Automatisierung von digitaler Code Signatur, das Verwenden von externen Zertifikaten und warum man (beispielsweise) einen Zeitzeugen benötigt. Umgesetzt wird die digitale Signatur einerseits durch eine interne Microsoft-basierte PKI, alsauch durch eine externe PKI-Lösung.

Übersicht

  • Erzeugen von Advanced Functions
  • Gezieltes Verwenden des .NET Frameworks in der Powershell
  • Erstellen von Controller Scripts
  • Debugging von Powershell Scripten
  • Powershell und XML-Dateien
  • Desired State Configuration (DSC)
  • Powershell Workflows
  • Digitale Signatur von Powershell Scripten oder Script Modulen

details zum Kursinhalt

Erzeugen von Advanced Functions
  • Überführen von Powershell Skripten in Advanced Functions
  • Erstellen von Script Modulen
  • Erstellen Parameter Attributen mit Inhaltsüberprüfung
  • Erstellen von mehrwertigen Parameter Attributen mit Inhaltsüberprüfung
  • Öffnen der Advanced Function für Pipeline-Input
  • Modifizieren der Ausgabewerte
  • WhatIf und Confirm in Advanced Functions
Verwenden des .NET Frameworks in der Powershell
  • Verwenden von Assemblies
  • Verwenden von Accelerators
Erstellen von Controller Scripts
  • Überblick über Controller Scripts
  • Controller Scripts mit Benutzeroberfläche
  • Controller Scripts mit Berichtsfunktion
Debugging von Powershell Scripten
  • ErrorAction verwenden
  • Write-Verbose zur Diagnostik verwenden
  • Write-Debug zur Diagnostik verwenden
  • Setzen von Breakpoints
  • Debug-Logging in Scripten
Powershell und XML-Dateien
  • Auswerten, Verändern und Schreiben in XML-Dateien
  • Convertieren von und in XML-Dateien
Desired State Configuration (DSC)
  • Überblick über DSC in der Server- und Clientadministration
  • Erstellen und Verteilen / einsetzen einer DSC-Konfiguration
Powershell Workflows
  • Überblick über Powershell Workflows
  • Erstellen und Anwenden von Powershell Workflows
Digitale Signatur von Powershell Scripten oder Script Modulen
  • Microsoft PKI im Überblick
  • Einsatz der Zertifikatsvorlage Code Signing
  • Erstellen einer digitalen Codesignatur
  • Automatisieren des Prozesses einer digitalen Codesignatur
X