PowerShell-Dateien des MID-Servers
PowerShell-Funktionen werden in Skriptdateien (*.ps1) gespeichert, die eine PowerShell-Skriptmodul-Dateinamenerweiterung (*.psm1) verwenden.
- Active Directory
- Austauschvorgang
- SCCM
- PowerShell
PSScript.ps1
Dieses Skript führt einige Aufgaben aus, z. B. Tests von Anmeldeinformationen, Passwortverschlüsselung und die Ausführung von Skripts, die im Orchestration-Aktivitätendesigner oder in MID-Skriptdateien konfiguriert sind. Dieses Dokument konzentriert sich jedoch darauf, wie PSScript.ps1 verwendet Credential.psm1 Modul zum Testen des Zugriffs auf Remote-Hosts.
PowerShell-credTypes
Die PowerShell-Anmeldeinformationstypen:
| Typ | Beschreibung |
|---|---|
| WMI | TestAnmeldeinformationsWMI |
| Austauschvorgang | TestCredentilExchange |
| AD | TestAnmeldeinformationen |
| SCCM | TestAnmeldeinformationsSCCM |
Wenn kein Anmeldeinformationstyp an das Skript „PSScrip.ps1“ übergeben wird, verwendet der MID-Server standardmäßig die WMI-Testfunktion, um den Zugriff auf den Zielhost zu testen. Wenn ein Anmeldeinformationstyp verwendet wird, führt der MID-Server die entsprechende Testfunktion für diesen Anmeldeinformationstyp aus.
Exit-Codes
Diese Exit-Codes werden vom Skript „PSScript.ps1“ zurückgegeben und in der MID-Server-Protokolldatei protokolliert.
| Typ | Testfunktion |
|---|---|
| 0 | PowerShell-Befehl/Skript erfolgreich ausgeführt. |
| 1 | Test erfolgreich abgeschlossen, Befehl/Skript konnte jedoch nicht ausgeführt werden. |
| 2 | Falsche Syntax an Skript übergeben. |
| 3 | Alle Anmeldeinformationen, einschließlich des MID-Server-Service-Accounts, konnten den Befehl/das Skript nicht ausführen. |
| 4 | Hat den Test bestanden und die Aktivität ausgeführt, es wurde jedoch ein Fehler zurückgegeben. Beispielanwender wurde nicht gefunden. |
DiagnoseUtil.psm1
| Dienstprogramm | Beschreibung |
|---|---|
| SNCLog-DebugInfo | Protokollieren Sie eine Debug-Nachricht für ein PowerShell-Skript oder eine PowerShell-Orchestration-Aktivität. Beispiele:
|
| SNCLog-ParameterInfo | Protokollieren Sie einen Funktionsparameterwert. Für „Funktion getHostName{ param( [Zeichenfolge] $target )“ , Der erste Wert für die PowerShell-Hashtabelle ist eine Zeichenfolge, die angibt, welche Funktion ausgeführt wird, und die Werte für jeden der Funktionsparameter. Beispiele:
|
| SNCObfuscate-value | Verwenden Sie dieses Dienstprogramm, um Werte zu Sicherheitszwecken zu verschlüsseln. Die Funktion wird angezeigt „$variableName“:*** , Wobei *** der verschleierte Wert ist. Beispiel: SNCObfuscate-value $password Hinweis: Die Debug-Nachricht lautet: „$password: ***“ . |
Anmeldeinformationen.psm1
| Funktion | Beschreibung |
|---|---|
| TestAnmeldeinformationsWMI | Testet den angegebenen Anwender und das angegebene Passwort auf dem Zielhost mit Get-WMIObjekt. |
| TestAnmeldeinformationen | Testet den angegebenen Anwender und das angegebene Passwort auf dem Zielhost mit dem integrierten DirectoryEntryObjekt. |
| TestCredentialExchange | Testet den angegebenen Anwender und das angegebene Passwort, um eine Sitzung auf einem Exchange-Host zu erstellen. Dieser Test verwendet die integrierte PowerShell-Remotingfunktion auf einem Remote-Host. WinRM ist standardmäßig auf Exchange-Servern konfiguriert. |
| TestAnmeldeinformationsSCCM | Testet den angegebenen Anwender und das angegebene Passwort, um eine Sitzung auf einem SCCM-Server zu erstellen. Dieser Test verwendet die integrierte PowerShell-Remotingfunktion auf einem Remote-Host. Dieser Test erfordert die Konfiguration von WinRM. |
| TestNoCredentialAccessWMI | Testet den angegebenen Anwender und das angegebene Passwort auf dem Zielhost mit Get-WMIObjekt. Dieser Test wird verwendet, wenn nicht CredType Wird verwendet. |
Dieses Diagramm veranschaulicht die Abhängigkeit des Verhaltens der Anmeldeinformationsauswahl auf dem Host, der von der PowerShell-Aktivität angestrebt wird. Wenn der Zielhost die IP-Adresse oder der Hostname des MID-Servers ist, umgeht der MID-Server alle Anmeldeinformationen in der Tabelle „Anmeldeinformationen“ und verwendet den Account des MID-Serverservice. Wenn der Zielhost nicht der MID-Server ist, dann alle WindowsAnmeldeinformationen werden zuerst verwendet. Wenn alle Anmeldeinformationen in der Tabelle „Anmeldeinformationen“ die PowerShell-Aktivität nicht erfolgreich ausführen können, verwendet der MID-Server den MID-Server-Service-Account.
ActiveDirectory.psm1
Diese Moduldatei speichert die Funktionen, die von den mit dem gelieferten PowerShell-Skripts verwendet werden Active Directory Aktivitätspaket.
Exchange.psm1
Diese Moduldatei speichert die Funktionen, die von den mit dem gelieferten PowerShell-Skripts verwendet werden Austausch Aktivitätspaket.
SCCM.psm1
Diese Moduldatei speichert die Funktionen, die von den mit dem gelieferten PowerShell-Skripts verwendet werden SCCM Aktivitätspaket.