about_WSMan_Provider

Anbietername

WSMan

Laufwerke

WSMan:

Kurze Beschreibung

Bietet Zugriff auf Konfigurationsinformationen für Webdienste für die Verwaltung (WS-Management).

Detaillierte Beschreibung

Diese Informationen gelten nur für PowerShell, die unter Windows ausgeführt wird.

Mit dem WSMan-Anbieter für PowerShell können Sie WS-Management-Konfigurationsdaten auf lokalen 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 der WS-Management-Konfigurationseinstellungen entspricht. Diese Gruppierungen werden als Container bezeichnet.

Ab 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 angezeigt, und die Eigenschaften werden in jeder Sitzungskonfiguration als Elemente angezeigt.

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

Hinweis

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

Organisation des WSMan: Drive

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

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

    Hinweis

    Die Dienstkonfiguration wird manchmal als Serverkonfiguration bezeichnet.

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

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

  • Plug-Ins werden geladen und vom WS-Management-Dienst verwendet, um verschiedene Funktionen bereitzustellen. PowerShell stellt standardmäßig drei Plug-Ins bereit:

    • Das Ereignisweiterleitungs-Plug-In.
    • Das Microsoft.PowerShell-Plug-In.
    • Das WMI-Anbieter-Plug-In (Windows Management Instrumentation). Diese drei Plug-Ins unterstützen ereignisweiterleitung, Konfiguration und WMI-Zugriff.
  • ClientCertificate: Sie können ein Clientzertifikat erstellen und konfigurieren. Ein Clientzertifikat wird verwendet, wenn der WS-Management-Client für die Verwendung der Zertifikatauthentifizierung 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 einem lokalen Computer. Um jedoch auf die Konfigurationseinstellungen eines Remotecomputers zuzugreifen, 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 im Anbieter angezeigt.

WSMan:\<Remote_Computer_Name>

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

Set-Location WSMan:

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

Set-Location C:

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

Set-Location -Path  WSMan:\SERVER01

Hinweis

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

Anzeigen des Inhalts des WSMan: Laufwerk

Dieser Befehl verwendet das Get-Childitem Cmdlet, um die WS-Management-Speicher im Localhost-Speicherspeicherort anzuzeigen.

Get-ChildItem -path WSMan:\Localhost

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

Dieser Befehl verwendet das Get-Childitem Cmdlet, um die WS-Management-Speicher im Remotecomputerspeicherort "SERVER01" anzuzeigen.

Get-ChildItem -path WSMan:\SERVER01

Hinweis

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

Festlegen des Werts von Elementen im WSMAN:-Laufwerk

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

# 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 angibt, anstatt ihn zu ändern. Im folgenden Beispiel wird ein neuer Wert "*.do Standard 2.com" an den alten Wert angefügt, der inTrustedHost:

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

Erstellen von Elementen im WSMAN:-Laufwerk

Erstellen eines neuen Listeners

Das New-Item Cmdlet erstellt Elemente innerhalb eines Anbieterlaufwerks. Jeder Anbieter verfügt über unterschiedliche Elementtypen, die Sie erstellen können. Auf dem WSMAN: Laufwerk können Sie Listener erstellen, die Sie konfigurieren, um Remoteanforderungen zu empfangen und darauf zu reagieren. Mit dem folgenden Befehl wird mithilfe des New-Item Cmdlets ein neuer HTTP-Listener erstellt.

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

Erstellen eines neuen Plug-Ins

Mit diesem Befehl wird ein Plug-In für den WS-Management-Dienst erstellt (registriert).

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

Mit diesem Befehl wird ein Ressourceneintrag im Ressourcenverzeichnis eines TestPlugin erstellt. 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 Sicherheitseintrag im Sicherheitsverzeichnis von Resource_5967683 (eine bestimmte Ressource). Bei diesem Befehl wird davon ausgegangen, dass der Ressourceneintrag mithilfe eines separaten Befehls 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

Mit diesem Befehl wird der ClientCertificate-Eintrag erstellt, der vom WS-Management-Client verwendet werden kann. Das neue ClientCertificate wird unter dem Verzeichnis "ClientCertificate " als "ClientCertificate_1234567890" angezeigt. Alle Parameter sind obligatorisch. Der Aussteller muss den Fingerabdruck des Ausstellerzertifikats sein.

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

Erstellen eines neuen Initialisierungsparameters

Mit diesem Befehl wird ein Initialisierungsparameter namens "testparametername" im Verzeichnis "InitializationParameters" erstellt. Bei diesem Befehl wird davon ausgegangen, dass das "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 im vom Anbieter aktivierten Laufwerk verwendet wird.

Adresszeichenfolge <>

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

  • Die Literalzeichenfolge "*". (Das Wild Karte Zeichen (*) bewirkt, dass der Befehl alle IP-Adressen auf allen Netzwerkadaptern bindet.)
  • Die Literalzeichenfolge "IP:" gefolgt von einer gültigen IP-Adresse im IPv4-Dezimalformat oder im IPv6-Hexadezimalformat.
  • Die Literalzeichenfolge "MAC:" gefolgt von der MAC-Adresse eines Adapters. Beispiel: MAC:32-a3-58-90-be-cc.

Hinweis

Der Adresswert wird beim Erstellen eines Listeners festgelegt.

Unterstützte Cmdlets

Capability-Aufzählung <>

Wenn Sie mit Plug-Ins arbeiten, gibt dieser Parameter einen Vorgang an, der für diesen URI (Uniform Resource Identifier) unterstützt wird. Sie müssen für jeden Vom URI unterstützten Vorgangstyp einen Eintrag erstellen. Sie können alle gültigen Attribute für einen bestimmten Vorgang angeben, wenn der Vorgang sie unterstützt.

Zu diesen Attributen gehören SupportsFiltering und SupportsFragment.

  • Create: Create operations are supported on the URI.
    • Das SupportFragment-Attribut wird verwendet, wenn der Create-Vorgang das Konzept unterstützt.
    • Das SupportFiltering-Attribut ist nicht gültig für Create-Vorgänge und sollte auf "False" festgelegt werden.

    Hinweis

    Dieser Vorgang ist für einen URI ungültig, wenn shell-Vorgänge ebenfalls unterstützt werden.

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

    Hinweis

    Dieser Vorgang ist für einen URI ungültig, wenn shell-Vorgänge ebenfalls unterstützt werden.

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

    Hinweis

    Dieser Vorgang ist für einen URI ungültig, wenn shell-Vorgänge ebenfalls unterstützt werden.

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

    Hinweis

    Dieser Vorgang ist für einen URI ungültig, wenn shell-Vorgänge ebenfalls unterstützt werden.

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

    Hinweis

    Dieser Vorgang ist für einen URI ungültig, wenn shell-Vorgänge ebenfalls unterstützt werden.

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

    Hinweis

    Dieser Vorgang ist für einen URI ungültig, wenn shell-Vorgänge ebenfalls unterstützt werden.

  • Abonnieren: Abonnentenvorgänge werden für den URI unterstützt.
    • Das SupportFragment-Attribut 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 für einen URI ungültig, wenn shell-Vorgänge ebenfalls unterstützt werden.

  • Shell: Shell-Vorgänge werden für den URI unterstützt.
    • Das SupportFragment-Attribut wird für Shell-Vorgänge nicht unterstützt und sollte auf "False" festgelegt werden.
    • Das SupportFiltering-Attribut ist für Shell-Vorgä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 einen URI konfiguriert ist, werden Vorgänge "Get", "Put", "Create", "Delete", "Invoke" und "Enumerate" intern innerhalb des WS-Management -Diensts (WinRM) verarbeitet, um Shells zu verwalten. Daher kann das Plug-In die Vorgänge nicht verarbeiten.

Unterstützte Cmdlets

CertificateThumbprint <String>

Gibt den Fingerabdruck des Dienstzertifikats an.

Dieser Wert stellt die Zeichenfolge von zweistelligen Hexadezimalwerten im Feld "Fingerabdruck" des Zertifikats dar. Es 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. Zertifikate werden bei der clientzertifikatbasierten Authentifizierung verwendet. Sie können nur lokalen Benutzerkonten zugeordnet werden und funktionieren nicht mit konten Standard. Verwenden Sie zum Abrufen eines Zertifikatfingerabdrucks die Get-Item Cmdlets Get-ChildItem im PowerShell-Laufwerk Cert: .

Unterstützte Cmdlets

<Boolean aktiviert>

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

Unterstützte Cmdlets

FileName (Plug-In) <-Zeichenfolge>

Gibt den Dateinamen des Operations-Plug-Ins an. Alle Umgebungsvariablen, die in diesen Eintrag aufgenommen werden, werden im Kontext des Benutzers erweitert, wenn eine Anforderung empfangen wird. Da jeder Benutzer eine andere Version derselben Umgebungsvariable haben könnte, könnte jeder Benutzer ein anderes Plug-In haben. Dieser Eintrag darf nicht leer sein und muss auf ein gültiges Plug-In verweisen.

Unterstützte Cmdlets

HostName-Zeichenfolge <>

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

Ausstellerzeichenfolge <>

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

Unterstützte Cmdlets

die die Funktionalität von WS-Management erweitern und erweitern. Die WSW-Verwaltungs-Plug-In-API bietet Funktionen, mit denen ein Benutzer Plug-Ins schreiben kann, indem bestimmte APIs für unterstützte Ressourcen-URIs und -Vorgänge implementiert werden. Nachdem die Plug-Ins entweder für den WS-Management-Dienst (WinRM) oder für Internetinformationsdienste (IIS) konfiguriert wurden, werden die Plug-Ins im WS-Management-Host bzw. im IIS-Host geladen. Remoteanforderungen werden an diese Plug-In-Einstiegspunkte weitergeleitet, um Vorgänge auszuführen.

Unterstützte Cmdlets

Port <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

Ressourcenzeichenfolge <>

Gibt einen Endpunkt an, der einen eindeutigen Verwaltungsvorgangs- oder Werttyp darstellt. Ein Dienst macht eine oder mehrere Ressourcen verfügbar, und einige Ressourcen können mehrere Instanzen aufweisen. Eine Verwaltungsressource ähnelt einer WMI-Klasse oder einer Datenbanktabelle, und eine Instanz ähnelt einer Instanz der Klasse oder einer Zeile in der Tabelle. Die Win32_LogicalDisk Klasse stellt beispielsweise eine Ressource dar. Win32_LogicalDisk="C:\\" ist eine bestimmte Instanz der Ressource.

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

Unterstützte Cmdlets

Ressourcenzeichenfolge <>

Gibt den URI (Uniform Resource Identifier) an, der einen bestimmten Ressourcentyp identifiziert, z. B. einen Datenträger oder einen Prozess, 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

Unterstützte Cmdlets

SDKVersion-Zeichenfolge <>

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

Unterstützte Cmdlets

Betreffzeichenfolge <>

Gibt die Entität an, die vom Zertifikat identifiziert wird.

Unterstützte Cmdlets

Transportzeichenfolge <>

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-Zeichenfolge <>

Gibt den URI an, für den der Zugriff basierend auf dem Wert des Sddl-Parameters autorisiert ist.

Unterstützte Cmdlets

URLPrefix-Zeichenfolge <>

Ein URL-Präfix, für das HTTP- oder HTTPS-Anforderungen akzeptiert werden sollen. Dies ist eine Zeichenfolge, die nur die Zeichen [a-z], [A-Z], [9-0], Unterstrich () und umgekehrten Schrägstrich (/_) enthält. Die Zeichenfolge darf nicht mit einem umgekehrten Schrägstrich (/) beginnen oder enden. Wenn der Computername beispielsweise "SampleComputer" lautet, würde der WS-Management-Client in der Zieladresse angeben http://SampleMachine/URLPrefix .

Unterstützte Cmdlets

Wertzeichenfolge <>

Gibt den Wert eines Initialisierungsparameters an, bei dem es sich um einen plug-in-spezifischen Wert handelt, der zum Angeben von Konfigurationsoptionen verwendet wird.

Unterstützte Cmdlets

XMLRenderingType-Zeichenfolge <>

Gibt das Format an, in dem XML über das WSMAN_DATA-Objekt an Plug-Ins übergeben wird. Es folgen gültige Werte:

  • 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 Aufgabe mithilfe der Pipeline 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-Referenzen 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 abzurufen, die für das Dateisystemlaufwerk angepasst sind, führen Sie einen Get-Help-Befehl auf einem Dateisystemlaufwerk aus, oder verwenden Sie den -Path Parameter " Get-Help ", um ein Dateisystemlaufwerk anzugeben.

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

Weitere Informationen