# PowerShell und kontrollierte Automatisierung

> Remoting, Idempotenz, Secrets und Desired State als kontrollierbare Automatisierungskette gestalten.

Track: [Windows Server Administration](https://physar.tech/learn/windows-server-administration)  
Kanonische Fassung: https://physar.tech/learn/windows-server-administration/powershell-automation  
Stand: 2026-07-28  
Interaktiver Teil: 4 Checks (nur im Browser)

## PowerShell und kontrollierte Automatisierung

### Automatisierung skaliert auch Fehler

Ein interaktiver Befehl kann auf einem Host nützlich sein. Auf 500 Hosts wird derselbe Befehl ohne Zielinventar, Vorprüfung, Idempotenz und Ergebnisprotokoll zu einem nicht begrenzten Produktionschange. Automatisierung verdient deshalb dieselben Gates wie ein Deployment.

> **Lernziel:** Du kannst einen Remote- und Automatisierungschange mit kleinstem Privileg, Pilot, idempotentem Sollzustand und überprüfbarer Evidenz gestalten.

### Das Automatisierungsvertrag

|  |  |
| --- | --- |
| **Input** | Genehmigtes Inventar, Parameter und Secret-Referenz – keine improvisierte Zielmenge. |
| **Precheck** | Vorbedingung, aktueller Zustand und Ausnahmen werden pro Ziel sichtbar. |
| **Action** | Idempotenter Sollzustand oder begrenzte Änderung; Wiederholung verschlechtert nichts. |
| **Evidence** | Ergebnis, Fehler und unveränderte Ziele werden auswertbar protokolliert. |

> **Least Privilege:** Ein Automationskonto erhält nur die Rechte, die der konkrete Schritt benötigt. „Als Domain Admin, dann geht es sicher“ ist keine Betriebsstrategie.

### Remoting und Desired State

PowerShell Remoting ist ein transportierter Verwaltungsweg, kein Freifahrtschein. Für wiederkehrende Konfigurationen macht ein deklarierter Desired State Abweichung sichtbar; auch dort bleiben Versionierung, Test und sichere Secrets erforderlich.

**Kurzcheck:** Was macht einen Breitenlauf zuerst kontrollierbar?

- [x] Ein genehmigtes Zielinventar, Precheck, Pilot und auswertbares Ergebnis pro Ziel
- [ ] Das Hinzufügen von `-Force` zu allen Befehlen
- [ ] Interaktive Ausführung mit einem maximal privilegierten Konto

> Richtig. Damit sind Scope, Wirkung und Fehler sichtbar, bevor der Change skaliert.

### Im Check

- Zielinventar von einer beliebigen Serverliste unterscheiden.
- Idempotenz und Fehlerbehandlung vor Parallelität priorisieren.
- Secrets referenzieren und kontrollieren, statt sie in Skripte oder Logs zu schreiben.

## Quellen

- learn.microsoft.com/en-us/powershell/scripting…ning-remote-commands — https://learn.microsoft.com/en-us/powershell/scripting/learn/remoting/running-remote-commands
- learn.microsoft.com/en-us/powershell/dsc/overview — https://learn.microsoft.com/en-us/powershell/dsc/overview?view=dsc-1.1
- learn.microsoft.com/en-us/powershell/scripting…ty/security-features — https://learn.microsoft.com/en-us/powershell/scripting/security/security-features
- learn.microsoft.com/en-us/powershell/utility-m…tmanagement/overview — https://learn.microsoft.com/en-us/powershell/utility-modules/secretmanagement/overview
