New-WSManInstance
Erstellt eine neue Instanz einer Verwaltungsressource.
Syntax
New-WSManInstance
[-ApplicationName <String>]
[-ComputerName <String>]
[-FilePath <String>]
[-OptionSet <Hashtable>]
[-Port <Int32>]
[-ResourceURI] <Uri>
[-SelectorSet] <Hashtable>
[-SessionOption <SessionOption>]
[-UseSSL]
[-ValueSet <Hashtable>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
New-WSManInstance
[-ConnectionURI <Uri>]
[-FilePath <String>]
[-OptionSet <Hashtable>]
[-ResourceURI] <Uri>
[-SelectorSet] <Hashtable>
[-SessionOption <SessionOption>]
[-ValueSet <Hashtable>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Beschreibung
Das cmdlet New-WSManInstance
erstellt eine neue Instanz einer Verwaltungsressource. Sie verwendet einen Ressourcen-URI und eine Wertsatz- oder Eingabedatei, um die neue Instanz der Verwaltungsressource zu erstellen.
Dieses Cmdlet verwendet die WinRM-Verbindungs-/Transportebene zum Erstellen der Verwaltungsressourceninstanz.
Beispiele
Beispiel 1: Erstellen eines HTTPS-Listeners
Mit diesem Befehl wird eine Instanz eines WS-Management HTTPS-Listeners auf allen IP-Adressen erstellt.
New-WSManInstance winrm/config/Listener -SelectorSet @{Transport='HTTPS'; Address='*'} -ValueSet @{Hostname="HOST";CertificateThumbprint="XXXXXXXXXX"}
Parameter
-ApplicationName
Gibt den Anwendungsnamen in der Verbindung an. Der Standardwert des ApplicationName-Parameters ist WSMAN-. Der vollständige Bezeichner für den Remoteendpunkt weist das folgende Format auf:
<transport>://<server>:<port>/<ApplicationName>
Zum Beispiel:
http://server01:8080/WSMAN
Internetinformationsdienste (Internet Information Services, IIS), die die Sitzung hostet, leitet Anforderungen mit diesem Endpunkt an die angegebene Anwendung weiter. Diese Standardeinstellung von WSMAN- ist für die meisten Anwendungen geeignet. Dieser Parameter soll verwendet werden, wenn zahlreiche Computer Remoteverbindungen mit einem Computer herstellen, auf dem Windows PowerShell ausgeführt wird. In diesem Fall hosten IIS Webdienste für die Verwaltung (WS-Management) zur Effizienz.
Typ: | String |
Position: | Named |
Standardwert: | Wsman |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Authentication
Gibt den Authentifizierungsmechanismus an, der auf dem Server verwendet werden soll. Mögliche Werte sind:
- Einfach: "Einfach" ist ein Schema, bei dem der Benutzername und das Kennwort im Klartext an den Server oder Proxy gesendet werden.
- Standard: Verwenden Sie die vom WS-Management Protokoll implementierte Authentifizierungsmethode. Dies ist die Standardeinstellung.
- Digest: Digest ist ein Abfrageantwortschema, das eine serverspezifische Datenzeichenfolge für die Abfrage verwendet.
- Kerberos: Der Clientcomputer und der Server authentifizieren sich gegenseitig mithilfe von Kerberos-Zertifikaten.
- Negotiate: Negotiate ist ein Abfrageantwortschema, das mit dem Server oder Proxy aushandelt, um das schema zu bestimmen, das für die Authentifizierung verwendet werden soll. Mit diesem Parameterwert kann beispielsweise ermittelt werden, ob das Kerberos-Protokoll oder NTLM verwendet wird.
- CredSSP: Verwenden Sie die Authentifizierung des Credential Security Support Provider (CredSSP), mit der der Benutzer Anmeldeinformationen delegieren kann. Diese Option wurde für Befehle entwickelt, die auf einem Remotecomputer ausgeführt werden, aber Daten von anderen Remotecomputern sammeln oder zusätzliche Befehle ausführen.
Vorsicht
CredSSP delegiert die Anmeldeinformationen des Benutzers vom lokalen Computer an einen Remotecomputer. Diese Vorgehensweise erhöht das Sicherheitsrisiko des Remotevorgangs. Wenn der Remotecomputer kompromittiert wird, können die Anmeldeinformationen verwendet werden, um die Netzwerksitzung zu steuern.
Typ: | AuthenticationMechanism |
Aliase: | auth, am |
Zulässige Werte: | None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-CertificateThumbprint
Gibt das Zertifikat für den digitalen öffentlichen Schlüssel (X509) eines Benutzerkontos an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Geben Sie den Zertifikatfingerabdruck des Zertifikats ein.
Zertifikate werden in der zertifikatbasierten Clientauthentifizierung verwendet. Sie können nur lokalen Benutzerkonten zugeordnet werden; sie funktionieren nicht mit Domänenkonten.
Verwenden Sie zum Abrufen eines Zertifikatfingerabdrucks den Befehl Get-Item
oder Get-ChildItem
im PowerShell-Zertifikat: Laufwerk.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ComputerName
Gibt den Computer an, für den Sie den Verwaltungsvorgang ausführen möchten. Der Wert kann ein vollqualifizierter Domänenname, ein NetBIOS-Name oder eine IP-Adresse sein. Verwenden Sie den lokalen Computernamen, verwenden Sie "localhost", oder verwenden Sie einen Punkt (.
), um den lokalen Computer anzugeben. Der lokale Computer ist der Standardwert. Wenn sich der Remotecomputer in einer anderen Domäne des Benutzers befindet, müssen Sie einen vollqualifizierten Domänennamen verwenden. Sie können einen Wert für diesen Parameter an das Cmdlet weiterleiten.
Typ: | String |
Aliase: | cn |
Position: | Named |
Standardwert: | Localhost |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ConnectionURI
Gibt den Verbindungsendpunkt an. Das Format dieser Zeichenfolge lautet:
<Transport>://<Server>:<Port>/<ApplicationName>
Die folgende Zeichenfolge ist ein richtig formatierter Wert für diesen Parameter:
http://Server01:8080/WSMAN
Der URI muss vollqualifizierter sein.
Typ: | Uri |
Aliase: | CURI, CU |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Credential
Gibt ein Benutzerkonto an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Die Standardeinstellung ist der aktuelle Benutzer. Geben Sie einen Benutzernamen ein, z. B. "User01", "Domain01\User01" oder "User@Domain.com". Oder geben Sie ein PSCredential-Objekt ein, z. B. ein objekt, das vom Cmdlet Get-Credential
zurückgegeben wird. Wenn Sie einen Benutzernamen eingeben, werden Sie zur Eingabe eines Kennworts aufgefordert.
Typ: | PSCredential |
Aliase: | cred, c |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-FilePath
Gibt den Pfad einer Datei an, die zum Erstellen einer Verwaltungsressource verwendet wird. Sie geben die Verwaltungsressource mit dem parameter ResourceURI und dem parameter SelectorSet an. Der folgende Befehl verwendet beispielsweise den Parameter File:
Invoke-WSManAction -Action stopservice -ResourceUri wmi/cimv2/Win32_Service -SelectorSet @{Name="spooler"} -File c:\input.xml -Authentication Default
Mit diesem Befehl wird die StopService-Methode für den Spooler-Dienst mithilfe von Eingaben aus einer Datei aufgerufen. Die Datei, Input.xml
, enthält den folgenden Inhalt:
<p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-OptionSet
Übergibt eine Reihe von Schaltern an einen Dienst, um die Art der Anforderung zu ändern oder zu verfeinern. Dies ist vergleichbar mit Optionen, die in Befehlszeilenshells verwendet werden, da sie dienstspezifisch sind. Es können beliebig viele Optionen angegeben werden.
Im folgenden Beispiel wird die Syntax veranschaulicht, die die Werte 1, 2 und 3 für die Parameter a, b und c übergibt:
-OptionSet @{a=1;b=2;c=3}
Typ: | Hashtable |
Aliase: | os |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Port
Gibt den Port an, der verwendet werden soll, wenn der Client eine Verbindung mit dem WinRM-Dienst herstellt. Wenn der Transport HTTP ist, lautet der Standardport 80. Wenn der Transport HTTPS ist, lautet der Standardport 443.
Wenn Sie HTTPS als Transport verwenden, muss der Wert des ComputerName Parameter mit dem gemeinsamen Zertifikatnamen (CN) des Servers übereinstimmen. Wenn der SkipCNCheck Parameter jedoch als Teil des SessionOption--Parameters angegeben wird, muss der allgemeine Zertifikatname des Servers nicht mit dem Hostnamen des Servers übereinstimmen. Der parameter SkipCNCheck sollte nur für vertrauenswürdige Computer verwendet werden.
Typ: | Int32 |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ResourceURI
Enthält den URI (Uniform Resource Identifier) der Ressourcenklasse oder -instanz. Der URI wird verwendet, um einen bestimmten Ressourcentyp zu identifizieren, z. B. Datenträger oder Prozesse, auf einem Computer.
Ein URI besteht aus einem Präfix und einem Pfad zu einer Ressource. Zum Beispiel:
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor
Typ: | Uri |
Aliase: | ruri |
Position: | 0 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-SelectorSet
Gibt eine Gruppe von Wertpaaren an, die zum Auswählen bestimmter Verwaltungsressourceninstanzen verwendet werden. Der SelectorSet Parameter wird verwendet, wenn mehrere Instanzen der Ressource vorhanden sind. Der Wert des SelectorSet- Parameters muss eine Hashtabelle sein.
Das folgende Beispiel zeigt, wie Sie einen Wert für diesen Parameter eingeben:
-SelectorSet @{Name="WinRM";ID="yyy"}
Typ: | Hashtable |
Position: | 1 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-SessionOption
Definiert eine Reihe erweiterter Optionen für die WS-Management Sitzung. Geben Sie ein SessionOption-objekt ein, das Sie mithilfe des cmdlets New-WSManSessionOption
erstellen. Weitere Informationen zu den verfügbaren Optionen finden Sie unter New-WSManSessionOption
.
Typ: | SessionOption |
Aliase: | so |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-UseSSL
Gibt an, dass das SSL-Protokoll (Secure Sockets Layer) verwendet werden soll, um eine Verbindung mit dem Remotecomputer herzustellen. Standardmäßig wird SSL nicht verwendet.
WS-Management verschlüsselt alle Windows PowerShell-Inhalte, die über das Netzwerk übertragen werden. Mit dem UseSSL--Parameter können Sie den zusätzlichen Schutz von HTTPS anstelle von HTTP angeben. Wenn SSL für den Für die Verbindung verwendeten Port nicht verfügbar ist und Sie diesen Parameter angeben, schlägt der Befehl fehl.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ValueSet
Gibt eine Hashtabelle an, mit der eine Verwaltungsressource geändert werden kann. Sie geben die Verwaltungsressource mit dem parameter ResourceURI und dem parameter SelectorSet an. Der Wert des ValueSet- Parameters muss eine Hashtabelle sein.
Typ: | Hashtable |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
None
Sie können keine Objekte an dieses Cmdlet weiterleiten.
Ausgaben
Dieses Cmdlet gibt die erstellte WSMan-Instanz als XmlElement--Objekt zurück.
Hinweise
Das Cmdlet Set-WmiInstance
, ein WMI-Cmdlet (Windows Management Instrumentation), ist ähnlich.
Set-WmiInstance
verwendet die DCOM-Verbindungs-/Transportebene zum Erstellen oder Aktualisieren von WMI-Instanzen.