about_WSMan_Provider

Anbietername

WSMan

Laufwerke

WSMan:

Kurze Beschreibung

Bietet Zugriff auf Web Services for Management (WS-Management)-Konfigurationsinformationen.

Detaillierte Beschreibung

Diese Informationen gelten nur für PowerShell, das auf einem Windows.

Mit dem WSMan-Anbieter für PowerShell können Sie Konfigurationsdaten WS-Management lokalen Computern oder Remotecomputern hinzufügen, ändern, löschen und löschen.

Der WSMan-Anbieter macht ein PowerShell-Laufwerk mit einer Verzeichnisstruktur verfügbar, die einer logischen Gruppierung WS-Management Konfigurationseinstellungen entspricht. Diese Gruppierungen werden als Container bezeichnet.

Ab Version Windows PowerShell 3.0 wurde der WSMan-Anbieter aktualisiert, um neue Eigenschaften für Sitzungskonfigurationen wie OutputBufferingMode zu unterstützen. Die Sitzungskonfigurationen werden als Elemente im Plug-In-Verzeichnis des WSMan: Laufwerks und die Eigenschaften als Elemente in jeder Sitzungskonfiguration angezeigt.

Der WSMan-Anbieter unterstützt die folgenden Cmdlets, die in diesem Artikel behandelt werden.

Hinweis

Sie können Befehle auf dem Laufwerk WSMan: verwenden, um die Werte der neuen Eigenschaften zu ändern. Sie können das Laufwerk WSMan: jedoch nicht in PowerShell 2.0 verwenden, um Eigenschaften zu ändern, die in Windows PowerShell 3.0 eingeführt wurden. Obwohl kein Fehler generiert wird, sind die Befehle nicht effektiv. Um diese Einstellungen zu ändern, verwenden Sie das WSMan-Laufwerk in Windows PowerShell 3.0.

Organisation des WSMan: Laufwerks

  • Client: Sie können verschiedene Aspekte des WS-Management konfigurieren. Die Konfigurationsinformationen werden in der Registrierung gespeichert.

  • Dienst: Sie können verschiedene Aspekte des Diensts WS-Management konfigurieren. Die Konfigurationsinformationen werden in der Registrierung gespeichert.

    Hinweis

    Die Dienstkonfiguration wird manchmal als Serverkonfiguration bezeichnet.

  • Shell: Sie können verschiedene Aspekte der WS-Management-Shell konfigurieren, z. B. die Einstellung zum Zulassen des Remoteshellzugriffs (AllowRemoteShellAccess) und die maximale Anzahl gleichzeitiger Benutzer (MaxConcurrentUsers).

  • Listener: Sie können einen Listener erstellen und konfigurieren. Ein Listener ist ein Verwaltungsdienst, der das WS-Verwaltungsprotokoll zum Senden und Empfangen von Nachrichten implementiert.

  • Plug-Ins: Plug-Ins werden geladen und vom WS-Management verwendet, um verschiedene Funktionen zur Verfügung zu stellen. PowerShell bietet standardmäßig drei Plug-Ins:

    • Das Ereignisweiterleitungs-Plug-In.
    • Das Microsoft.PowerShell-Plug-In.
    • Das Windows-Anbieter-Plug-In für die Verwaltungsinstrumentation (WMI). Diese drei Plug-Ins unterstützen die Ereignisweiterleitung, -konfiguration und den WMI-Zugriff.
  • ClientCertificate: Sie können ein Clientzertifikat erstellen und konfigurieren. Ein Clientzertifikat wird verwendet, wenn der WS-Verwaltungsclient zur Verwendung der Zertifikatsauthentifizierung konfiguriert ist.

Verzeichnishierarchie des WSMan-Anbieters

Die Verzeichnishierarchie des WSMan-Anbieters für den lokalen Computer lautet wie folgt.

WSMan:\localhost
--- Client
--- Service
--- Shell
--- Listener
------ <Specific_Listener>
--- Plugin
------ Event Forwarding Plugin
--------- InitializationParameters
--------- Resources
------------ Security
------ Microsoft.Powershell
--------- InitializationParameters
--------- Resources
------------ Security
------ WMI Provider
--------- InitializationParameters
--------- Resources
------------ Security
--- ClientCertificate

Die Verzeichnishierarchie des WSMan-Anbieters für einen Remotecomputer ist identisch mit der für einen lokalen Computer. Um jedoch auf die Konfigurationseinstellungen eines Remotecomputers zugreifen zu können, müssen Sie mithilfe von Verbinden-WSMan eine Verbindung mit dem Remotecomputer herstellen. Sobald eine Verbindung mit einem Remotecomputer hergestellt wurde, wird der Name des Remotecomputers beim Anbieter angezeigt.

WSMan:\<Remote_Computer_Name>

Dieser Befehl verwendet das Cmdlet Set-Location , um den aktuellen Speicherort in das Laufwerk zu WSMan: ändern.

Set-Location WSMan:

Um zu einem Dateisystemlaufwerk zurückzukehren, geben Sie den Namen des Laufwerks ein. Geben Sie beispielsweise ein.

Set-Location C:

Dieser Befehl verwendet den Befehl Set-Location , um den aktuellen Speicherort in den Stammspeicherort am Remotesystemspeicherort zu ändern. Verwenden Sie einen schrägen oder \ einen schrägen / Schrägstrich, um eine Ebene des Laufwerks WSMan: anzugeben.

Set-Location -Path  WSMan:\SERVER01

Hinweis

Der obige Befehl geht davon aus, dass bereits eine Verbindung mit dem Remotesystem vorhanden ist.

Anzeigen des Inhalts von WSMan: Laufwerk

Dieser Befehl verwendet das Cmdlet Get-Childitem , um die WS-Management speicher am Speicherort Localhost anzuzeigen.

Get-ChildItem -path WSMan:\Localhost

Wenn Sie sich auf dem Laufwerk WSMan: befinden, können Sie den Laufwerksnamen weglassen.

Dieser Befehl verwendet das Cmdlet Get-Childitem , um die WS-Management am Speicherort des Remotecomputers "SERVER01" anzuzeigen.

Get-ChildItem -path WSMan:\SERVER01

Hinweis

Der obige Befehl geht davon aus, dass bereits eine Verbindung mit dem Remotesystem vorhanden ist.

Festlegen des Werts von Elementen auf dem Laufwerk WSMAN:

Sie können das Cmdlet verwenden Set-Item , um die Konfigurationseinstellungen auf dem Laufwerk zu WSMAN ändern. Im folgenden Beispiel wird der TrustedHosts-Wert so eingerichtet, dass er alle Hosts mit dem Suffix "contoso.com" akzeptiert.

# You do not need to specify the -Path parameter name when using Set-Item.
PS WSMAN:\localhost\Client> Set-Item .\TrustedHosts -Value "*.contoso.com"

Das Set-Item Cmdlet unterstützt einen zusätzlichen Parameter -Concatenate , der einen Wert anfügen, anstatt ihn zu ändern. Im folgenden Beispiel wird der neue Wert "*.domain2.com" an den alten Wert angefügt, der in gespeichert ist. TrustedHost:

Set-Item WSMAN:\localhost\Client\TrustedHosts *.domain2.com -Concatenate

Erstellen von Elementen auf dem Laufwerk WSMAN:

Erstellen eines neuen Listeners

Das New-Item Cmdlet erstellt Elemente innerhalb eines Anbieterlaufwerks. Jeder Anbieter verfügt über verschiedene Elementtypen, die Sie erstellen können. Auf dem WSMAN: Laufwerk können Sie Listener erstellen, die Sie für den Empfang und die Reaktion auf Remoteanforderungen konfigurieren. Mit dem folgenden Befehl wird mit dem Cmdlet ein neuer HTTP-Listener New-Item erstellt.

New-Item -Path WSMan:\localhost\Listener -Address * -Transport HTTP -force

Erstellen eines neuen Plug-Ins

Dieser Befehl erstellt (registriert) ein Plug-In für den WS-Verwaltungsdienst.

New-Item -Path WSMan:\localhost\Plugin `
         -Plugin TestPlugin `
         -FileName %systemroot%\system32\WsmWmiPl.dll `
         -Resource http://schemas.dmtf.org/wbem/wscim/2/cim-schema `
         -SDKVersion 1 `
         -Capability "Get","Put","Invoke","Enumerate" `
         -XMLRenderingType text

Erstellen eines neuen Ressourceneintrags

Dieser Befehl erstellt einen Ressourceneintrag im Verzeichnis Resources eines TestPlugin. Bei diesem Befehl wird davon ausgegangen, dass ein TestPlugin mit einem separaten Befehl erstellt wurde.

New-Item -Path WSMan:\localhost\Plugin\TestPlugin\Resources `
         -ResourceUri http://schemas.dmtf.org/wbem/wscim/3/cim-schema `
         -Capability "Enumerate"

Erstellen eines neuen Sicherheitseintrags für eine Ressource

Dieser Befehl erstellt einen Eintrag für die Sicherheit im Verzeichnis "Security" von Resource_5967683 (eine bestimmte Ressource). Bei diesem Befehl wird davon ausgegangen, dass der Ressourceneintrag mit einem separaten Befehl erstellt wurde.

$path = "WSMan:\localhost\Plugin\TestPlugin\Resources\Resource_5967683"
New-Item -Path $path\Security `
         -Sddl "O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GWGX;;;WD)"

Erstellen eines neuen Clientzertifikats

Dieser Befehl erstellt den ClientCertificate-Eintrag , der vom Client WS-Management werden kann. Das neue ClientCertificate-Verzeichnis wird im Verzeichnis ClientCertificate als "ClientCertificate_1234567890" aufgeführt. Alle Parameter müssen angegeben werden. Der Aussteller muss ein Fingerabdruck des Ausstellerzertifikats sein.

$cred = Get-Credential
New-Item -Path WSMan:\localhost\ClientCertificate `
         -Issuer 1b3fd224d66c6413fe20d21e38b304226d192dfe `
         -URI wmicimv2/* `
         -Credential $cred;

Erstellen eines neuen Initialisierungsparameters

Dieser Befehl erstellt einen Initialisierungsparameter namens "testparametername" im Verzeichnis "InitializationParameters". Bei diesem Befehl wird davon ausgegangen, dass "TestPlugin" mit einem separaten Befehl erstellt wurde.

New-Item -Path WSMan:\localhost\Plugin\TestPlugin\InitializationParameters `
         -ParamName testparametername `
         -ParamValue testparametervalue

Dynamische Parameter

Dynamische Parameter sind Cmdlet-Parameter, die von einem PowerShell-Anbieter hinzugefügt werden und nur verfügbar sind, wenn das Cmdlet auf dem anbieterfähigen Laufwerk verwendet wird.

Adresse <String>

Gibt die Adresse an, für die der Listener erstellt wurde. Der Wert kann in folgenden Formen vorliegen:

  • Die Literalzeichenfolge "*". (Das Platzhalterzeichen (*) sorgt dafür, dass der Befehl alle IP-Adressen aller Netzwerkadapter bindet.)
  • Die Literalzeichenfolge "IP:", gefolgt von einer gültigen IP-Adresse im IPv4-Format "dotted-decimal" oder im geklonten hexadezimalen IPv6-Format.
  • Die Literalzeichenfolge "MAC:", gefolgt von der MAC-Adresse eines Adapters. Beispiel: MAC:32-a3-58-90-be-cc.

Hinweis

Der Wert der Adresse wird beim Erstellen eines Listeners festgelegt.

Unterstützte Cmdlets

Fähigkeit <Enumeration>

Bei der Arbeit mit Plug-Ins gibt dieser Parameter einen Vorgang an, der für diesen Uniform Resource Identifier (URI) unterstützt wird. Sie müssen einen Eintrag für jede Art von Vorgang erstellen, die der URI unterstützt. Sie können alle gültigen Attribute für einen bestimmten Vorgang angeben, wenn der Vorgang dies unterstützt.

Zu diesen Attributen gehören SupportsFiltering und SupportsFragment.

  • Erstellen: Erstellungsvorgänge werden für den URI unterstützt.
    • Das Attribut SupportFragment wird verwendet, wenn der Erstellungsvorgang das Konzept unterstützt.
    • Das Attribut SupportFiltering ist für Erstellungsvorgänge NICHT gültig und sollte auf "False" festgelegt werden.

    Hinweis

    Dieser Vorgang ist nicht für einen URI gültig, wenn auch Shell-Vorgänge unterstützt werden.

  • Löschen: Löschvorgänge werden für den URI unterstützt.
    • Das Attribut SupportFragment wird verwendet, wenn der Delete-Vorgang das Konzept unterstützt.
    • Das Attribut SupportFiltering ist für Delete-Vorgänge NICHT gültig und sollte auf "False" festgelegt werden.

    Hinweis

    Dieser Vorgang ist nicht für einen URI gültig, wenn auch Shell-Vorgänge unterstützt werden.

  • Enumerate: Enumerationsvorgänge werden für den URI unterstützt.
    • Das Attribut SupportFragment wird für Enumerationsvorgänge NICHT unterstützt und sollte auf FALSE festgelegt werden.
    • Das Attribut SupportFiltering ist gültig, und wenn das Plug-In das Filtern unterstützt, sollte dieses Attribut auf "True" festgelegt werden.

    Hinweis

    Dieser Vorgang ist nicht für einen URI gültig, wenn auch Shell-Vorgänge unterstützt werden.

  • Get: Get-Vorgänge werden für den URI unterstützt.
    • Das Attribut SupportFragment wird verwendet, wenn der Get-Vorgang das Konzept unterstützt.
    • Das Attribut SupportFiltering ist für Get-Vorgänge NICHT gültig und sollte auf "False" festgelegt werden.

    Hinweis

    Dieser Vorgang ist nicht für einen URI gültig, wenn auch Shell-Vorgänge unterstützt werden.

  • Invoke: Aufrufvorgänge werden für den URI unterstützt.
    • Das Attribut SupportFragment wird für Invoke-Vorgänge nicht unterstützt und sollte auf FALSE festgelegt werden.
    • Das SupportFiltering-Attribut ist ungültig und sollte auf "False" festgelegt werden.

    Hinweis

    Dieser Vorgang ist nicht für einen URI gültig, wenn auch Shell-Vorgänge unterstützt werden.

  • Put: Put-Vorgänge werden für den URI unterstützt.
    • Das Attribut SupportFragment wird verwendet, wenn der Put-Vorgang das Konzept unterstützt.
    • Das Attribut SupportFiltering ist für Put-Vorgänge ungültig und sollte auf "False" festgelegt werden.

    Hinweis

    Dieser Vorgang ist nicht für einen URI gültig, wenn auch Shell-Vorgänge unterstützt werden.

  • Abonnieren: Subscribe-Vorgänge werden für den URI unterstützt.
    • Das Attribut SupportFragment wird für Subscribe-Vorgänge nicht unterstützt und sollte auf FALSE festgelegt werden.
    • Das Attribut SupportFiltering ist für Subscribe-Vorgänge ungültig und sollte auf "False" festgelegt werden.

    Hinweis

    Dieser Vorgang ist nicht für einen URI gültig, wenn auch Shell-Vorgänge unterstützt werden.

  • Shell: Shellvorgänge werden für den URI unterstützt.
    • Das Attribut SupportFragment wird für Shellvorgänge nicht unterstützt und sollte auf "False" festgelegt werden.
    • Das Attribut SupportFiltering ist für Shellvorgänge ungültig und sollte auf "False" festgelegt werden.

    Hinweis

    Dieser Vorgang ist für einen URI ungültig, wenn auch ein anderer Vorgang unterstützt wird.

    Hinweis

    Wenn ein Shell-Vorgang für eine URI konfiguriert ist, werden Get-, Put-, Create-, Delete-, Invoke- und Enumerate-Vorgänge intern innerhalb des WS-Verwaltungsdiensts (WinRM) zum Verwalten von Shells verarbeitet. Daher kann das Plug-In die Vorgänge nicht verarbeiten.

Unterstützte Cmdlets

CertificateThumbprint <String>

Gibt den Fingerabdruck des Dienstzertifikats an.

Dieser Wert repräsentiert die Zeichenfolge von zweistelligen Hexadezimalwerten im Fingerabdruckfeld des Zertifikats. Es gibt das digitale Zertifikat für öffentliche Schlüssel (X509) eines Benutzerkontos an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Zertifikate werden bei der clientzertifikatbasierten Authentifizierung verwendet. Sie können nur lokalen Benutzerkonten zugeordnet und nicht mit Domänenkonten verwendet werden. Verwenden Sie zum Abrufen eines Zertifikatfingerabdrucks die Get-Item Cmdlets oder Get-ChildItem im PowerShell-Laufwerk Cert: .

Unterstützte Cmdlets

Aktiviert <Boolean>

Gibt an, ob der Listener aktiviert oder deaktiviert ist. Der Standardwert ist True.

Unterstützte Cmdlets

FileName (Plug-In) <String>

Gibt den Dateinamen des Operations-Plug-Ins an. Alle Umgebungsvariablen, die in diesem Eintrag enthalten sind, werden im Kontext des Benutzers erweitert, wenn eine Anforderung empfangen wird. Da jeder Benutzer über eine andere Version derselben Umgebungsvariablen verfügen kann, kann jeder Benutzer über ein anderes Plug-In verfügen. Dieser Eintrag darf nicht leer sein und muss auf ein gültiges Plug-In verweisen.

Unterstützte Cmdlets

Hostname <String>

Gibt den Hostnamen des Computers an, auf dem der WS-Management-Dienst (WinRM) ausgeführt wird.

Bei diesem Wert muss es sich um einen vollständig qualifizierten Domänennamen, eine IPv4- oder IPv6-Literalzeichenfolge oder ein Platzhalterzeichen handeln.

Unterstützte Cmdlets

Emittenten <String>

Gibt den Namen der Zertifizierungsstelle an, die das Zertifikat ausgestellt hat.

Unterstützte Cmdlets

, die die Funktionalität von WS-Management verbinden und erweitern. Die WSW-Management-Plug-In-API bietet Funktionen, mit denen Benutzer Plug-Ins schreiben können, indem bestimmte APIs für unterstützte Ressourcen-URIs und -Vorgänge implementiert werden. Nachdem die Plug-Ins entweder für den WS-Verwaltungsdienst (WinRM) oder für Internet Information Services (IIS) konfiguriert wurden, werden die Plug-Ins in den WS-Management-Host oder in den IIS-Host geladen. Remoteanforderungen werden an diese Plug-In-Einstiegspunkte für Operationen weitergeleitet.

Unterstützte Cmdlets

Hafen <Unsigned Short Integer>

Gibt den TCP-Port an, für den der Listener erstellt wird. Sie können einen beliebigen Wert zwischen 1 und 65535 angeben.

Unterstützte Cmdlets

Ressource <String>

Gibt einen Endpunkt an, der einen unterschiedlichen Typ von Verwaltungsvorgang oder Wert darstellt. Ein Dienst macht eine oder mehrere Ressourcen verfügbar, und einige Ressourcen können mehr als eine Instanz aufweisen. Eine Management-Ressource ist vergleichbar mit einer WMI-Klasse oder einer Datenbanktabelle, und eine Instanz ist vergleichbar mit einer Instanz der Klasse oder einer Zeile in der Tabelle. Beispielsweise stellt die Win32_LogicalDisk -Klasse eine Ressource dar. Win32_LogicalDisk="C:\\" ist eine bestimmte Instanz der Ressource.

Ein Uniform Resource Identifier (URI) enthält ein Präfix und einen Pfad zu einer Ressource. 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

Unterstützte Cmdlets

Ressource <String>

Gibt den Uniform Resource Identifier (URI) an, der eine bestimmte Art von Ressource identifiziert, z. B. ein Datenträger oder ein Prozess auf einem Computer.

Ein URI besteht aus einem Präfix und einem Pfad zu einer Ressource. 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

Unterstützte Cmdlets

SDKVersion <String>

Gibt die Version des WS-Management-Plug-In-SDKs an. Der einzige gültige Wert ist . 1.

Unterstützte Cmdlets

Betreff <String>

Gibt die Entität an, die durch das Zertifikat identifiziert wird.

Unterstützte Cmdlets

Transport <String>

Legt den Transport zum Senden und Empfangen von WS-Management-Protokollanforderungen und -antworten fest. Der Wert muss entweder HTTP oder HTTPS sein.

Hinweis: Der Transportwert wird beim Erstellen eines Listeners festgelegt.

Unterstützte Cmdlets

URI <String>

Gibt den URI an, für den der Zugriff basierend auf dem Wert des Parameters Sddl gewährt wird.

Unterstützte Cmdlets

URLPrefix <String>

Ein URL-Präfix für das Akzeptieren von HTTP- oder HTTPS-Anforderungen. Dies ist eine Zeichenfolge, die nur die Zeichen , , , Unterstrich (_) und den zurücken Schrägstrich () enthält/. [9-0]``[A-Z]``[a-z] Die Zeichenfolge darf nicht mit einem schrägen Schrägstrich () beginnen oder mit diesem enden/. Wenn der Computername beispielsweise "SampleComputer" ist, http://SampleMachine/URLPrefix gibt WS-Management Client in der Zieladresse an.

Unterstützte Cmdlets

Wert <String>

Gibt den Wert eines Initialisierungsparameters an, einem Plug-In-spezifischen Wert, der verwendet wird, um Konfigurationsoptionen anzugeben.

Unterstützte Cmdlets

XMLRenderingType <String>

Gibt das Format an, in dem XML über das -Objekt an Plug-Ins WSMAN_DATA wird. Die folgenden sind Werte gültig:

  • Text: Eingehende XML-Daten sind in einer WSMAN_DATA_TYPE_TEXT-Struktur enthalten, die den XML-Code als PCWSTR-Speicherpuffer darstellt.
  • XMLReader: Eingehende XML-Daten sind in einer WSMAN_DATA_TYPE_WS_XML_READER-Struktur enthalten, die den XML-Code als XmlReader-Objekt darstellt, das in der Headerdatei "WebServices.h" definiert ist.

Unterstützte Cmdlets

Verwenden der Pipeline

Anbieter-Cmdlets akzeptieren Pipelineeingaben. Sie können die Pipeline verwenden, um die Aufgabe zu vereinfachen, indem Sie Anbieterdaten von einem Cmdlet an ein anderes Anbieter-Cmdlet senden. Weitere Informationen zur Verwendung der Pipeline mit Anbieter-Cmdlets finden Sie in den Cmdlet-Verweisen in diesem Artikel.

Hilfe

Ab Windows PowerShell 3.0 können Sie benutzerdefinierte Hilfethemen für Anbieter-Cmdlets abrufen, die erläutern, wie sich diese Cmdlets in einem Dateisystemlaufwerk verhalten.

Um die Hilfethemen zu erhalten, die für das Dateisystemlaufwerk angepasst sind, führen Sie einen Get-Help-Befehl auf -Path einem Dateisystemlaufwerk aus, oder verwenden Sie den Parameter von Get-Help , um ein Dateisystemlaufwerk anzugeben.

Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path wsman:

Siehe auch