Invoke-WSManAction

Anropar en åtgärd för objektet som anges av resurs-URI:n och av väljarna.

Syntax

Invoke-WSManAction
      [-Action] <String>
      [-ConnectionURI <Uri>]
      [-FilePath <String>]
      [-OptionSet <Hashtable>]
      [[-SelectorSet] <Hashtable>]
      [-SessionOption <SessionOption>]
      [-ValueSet <Hashtable>]
      [-ResourceURI] <Uri>
      [-Credential <PSCredential>]
      [-Authentication <AuthenticationMechanism>]
      [-CertificateThumbprint <String>]
      [<CommonParameters>]
Invoke-WSManAction
      [-Action] <String>
      [-ApplicationName <String>]
      [-ComputerName <String>]
      [-FilePath <String>]
      [-OptionSet <Hashtable>]
      [-Port <Int32>]
      [[-SelectorSet] <Hashtable>]
      [-SessionOption <SessionOption>]
      [-UseSSL]
      [-ValueSet <Hashtable>]
      [-ResourceURI] <Uri>
      [-Credential <PSCredential>]
      [-Authentication <AuthenticationMechanism>]
      [-CertificateThumbprint <String>]
      [<CommonParameters>]

Description

Kör Invoke-WSManAction en åtgärd på objektet som anges av RESOURCE_URI, där parametrar anges av nyckelvärdepar.

Den här cmdleten använder WSMan-anslutnings-/transportskiktet för att köra åtgärden.

Exempel

Exempel 1: Anropa en metod

Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service  -SelectorSet @{name="spooler"} -Authentication default

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Det här kommandot anropar StartService-metoden för den Win32_Service WMI-klassinstans som motsvarar Spooler-tjänsten.

Returvärdet anger om åtgärden lyckades. I det här fallet indikerar ett returvärde på 0 att det lyckades. Ett returvärde på 5 anger att tjänsten redan har startats.

Exempel 2: Anropa en metod

Invoke-WSManAction -Action stopservice -ResourceURI wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath:input.xml -Authentication default

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Det här kommandot anropar metoden StopService i Spooler-tjänsten med hjälp av indata från en fil. Filen, Input.xml, innehåller följande innehåll:

<p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

Returvärdet anger om åtgärden lyckades. I det här fallet indikerar ett returvärde på 0 att det lyckades. Ett returvärde på 5 anger att tjänsten redan har startats.

Exempel 3: Anropa en metod med angivna parametervärden

Invoke-WSManAction -Action create -ResourceURI wmicimv2/win32_process -ValueSet @{commandline="notepad.exe";currentdirectory="C:\"}

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Process
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ProcessId   : 6356
ReturnValue : 0

Det här kommandot anropar metoden Skapa för klassen Win32_Process. Den skickar metoden två parametervärden och Notepad.exeC:\. Därför skapas en ny process för att köra Anteckningar och den aktuella katalogen för den nya processen är inställd på C:\.

Exempel 4: Anropa en metod på en fjärrdator

Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service  -SelectorSet @{name="spooler"} -ComputerName server01 -Authentication default

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Det här kommandot anropar StartService-metoden för den Win32_Service WMI-klassinstans som motsvarar Spooler-tjänsten. Eftersom parametern ComputerName har angetts körs kommandot mot fjärrserver01-datorn.

Returvärdet anger om åtgärden lyckades. I det här fallet indikerar ett returvärde på 0 att det lyckades. Ett returvärde på 5 anger att tjänsten redan har startats.

Parametrar

-Action

Anger vilken metod som ska köras på det hanteringsobjekt som anges av ResourceURI och väljare.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationName

Anger programnamnet i anslutningen. Standardvärdet för parametern ApplicationName är WSMAN. Den fullständiga identifieraren för fjärrslutpunkten är i följande format:

<Transport>://<Server>:<Port>/<ApplicationName>

Till exempel:

http://server01:8080/WSMAN

Internet Information Services (IIS), som är värd för sessionen, vidarebefordrar begäranden med den här slutpunkten till det angivna programmet. Den här standardinställningen för "WSMAN" är lämplig för de flesta användningsområden. Den här parametern är utformad för att användas när flera datorer upprättar fjärranslutningar till en dator som kör Windows PowerShell. I det här fallet är IIS värd för Web Services for Management (WS-Management) för effektivitet.

Type:String
Position:Named
Default value:Wsman
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

Anger den autentiseringsmekanism som ska användas på servern. Möjliga värden är:

  • Basic – Basic är ett schema där användarnamnet och lösenordet skickas i klartext till servern eller proxyn.
  • Default – Använd autentiseringsmetoden som implementeras av WS-Management-protokollet. Det här är standardinställningen.
  • Digest – Sammandrag är ett utmaningssvarsschema som använder en server angiven datasträng för utmaningen.
  • Kerberos – Klientdatorn och servern autentiseras ömsesidigt med hjälp av Kerberos-certifikat.
  • Negotiate – Negotiate är ett utmaningssvarsschema som förhandlar med servern eller proxyn för att fastställa vilket schema som ska användas för autentisering. Det här parametervärdet tillåter till exempel förhandling för att avgöra om Kerberos-protokollet eller NTLM används.
  • CredSSP – Använd CredSSP-autentisering (Credential Security Support Provider) som gör att användaren kan delegera autentiseringsuppgifter. Det här alternativet är utformat för kommandon som körs på en fjärrdator men som samlar in data från eller kör ytterligare kommandon på andra fjärrdatorer.

Varning

CredSSP delegerar användarens autentiseringsuppgifter från den lokala datorn till en fjärrdator. Den här metoden ökar säkerhetsrisken för fjärråtgärden. Om fjärrdatorn komprometteras, när autentiseringsuppgifter skickas till den, kan autentiseringsuppgifterna användas för att styra nätverkssessionen.

Type:AuthenticationMechanism
Aliases:auth, am
Accepted values:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

Anger det digitala offentliga nyckelcertifikatet (X509) för ett användarkonto som har behörighet att utföra den här åtgärden. Ange certifikatets tumavtryck.

Certifikat används i klientcertifikatbaserad autentisering. De kan endast mappas till lokala användarkonton. de fungerar inte med domänkonton.

Om du vill hämta ett tumavtryck för certifikatet Get-Item använder du kommandot eller Get-ChildItem i Windows PowerShell Cert:-enheten.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Anger den dator som du vill köra hanteringsåtgärden mot. Värdet kan vara ett fullständigt kvalificerat domännamn, ett NetBIOS-namn eller en IP-adress. Använd namnet på den lokala datorn, använd localhost eller använd en punkt (.) för att ange den lokala datorn. Den lokala datorn är standard. När fjärrdatorn finns i en annan domän än användaren måste du använda ett fullständigt domännamn. Du kan skicka ett värde för den här parametern till cmdleten.

Type:String
Aliases:cn
Position:Named
Default value:Localhost
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionURI

Anger anslutningsslutpunkten. Formatet för den här strängen är:

<Transport>://<Server>:<Port>/<ApplicationName>

Följande sträng är ett korrekt formaterat värde för den här parametern:

http://Server01:8080/WSMAN

URI:n måste vara fullständigt kvalificerad.

Type:Uri
Aliases:CURI, CU
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Anger ett användarkonto som har behörighet att utföra den här åtgärden. Standard är den aktuella användaren. Ange ett användarnamn, till exempel "User01", "Domain01\User01" eller User@Domain.com. Eller ange ett PSCredential-objekt, till exempel ett som returneras av cmdleten Get-Credential . När du skriver ett användarnamn uppmanas du att ange ett lösenord.

Type:PSCredential
Aliases:cred, c
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-FilePath

Anger sökvägen till en fil som används för att uppdatera en hanteringsresurs. Du anger hanteringsresursen med hjälp av parametern ResourceURI och parametern SelectorSet. Följande kommando använder till exempel parametern FilePath:

Invoke-WSManAction -Action stopservice -ResourceUri wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath c:\input.xml -Authentication default

Det här kommandot anropar metoden StopService i Spooler-tjänsten med hjälp av indata från en fil. Filen, Input.xml, innehåller följande innehåll:

<p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OptionSet

Skickar en uppsättning växlar till en tjänst för att ändra eller förfina typen av begäran. Dessa liknar växlar som används i kommandoradsgränssnitt eftersom de är tjänstspecifika. Valfritt antal alternativ kan anges.

I följande exempel visas syntaxen som skickar värdena 1, 2 och 3 för parametrarna a, b och c:

-OptionSet @{a=1;b=2;c=3}

Type:Hashtable
Aliases:os
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Port

Anger den port som ska användas när klienten ansluter till WinRM-tjänsten. När transporten är HTTP är standardporten 80. När transporten är HTTPS är standardporten 443. När du använder HTTPS som transport måste värdet för parametern ComputerName matcha serverns gemensamma certifikatnamn (CN). Om parametern SkipCNCheck har angetts som en del av parametern SessionOption behöver certifikatets gemensamma namn på servern inte matcha serverns värdnamn. Parametern SkipCNCheck ska endast användas för betrodda datorer.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceURI

Innehåller URI (Uniform Resource Identifier) för resursklassen eller instansen. URI:n används för att identifiera en specifik typ av resurs, till exempel diskar eller processer, på en dator.

En URI består av ett prefix och en sökväg till en resurs. Till exempel:

http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk

http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor

Type:Uri
Aliases:ruri
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SelectorSet

Anger en uppsättning värdepar som används för att välja specifika hanteringsresursinstanser. SelectorSet används när mer än en instans av resursen finns. Värdet för SelectorSet måste vara en hash-tabell.

I följande exempel visas hur du anger ett värde för den här parametern:

-SelectorSet @{Name="WinRM";ID="yyy"}

Type:Hashtable
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SessionOption

Definierar en uppsättning utökade alternativ för WS-Management-sessionen. Ange ett SessionOption-objekt som du skapar med hjälp av cmdleten New-WSManSessionOption . Mer information om tillgängliga alternativ finns i New-WSManSessionOption.

Type:SessionOption
Aliases:so
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSSL

Anger att SSL-protokollet (Secure Sockets Layer) används för att upprätta en anslutning till fjärrdatorn. Som standard används inte SSL.

WS-Management krypterar allt PowerShell-innehåll som överförs över nätverket. Med parametern UseSSL kan du ange ytterligare skydd för HTTPS i stället för HTTP. Om SSL inte är tillgängligt på den port som används för anslutningen och du anger den här parametern misslyckas kommandot.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ValueSet

Anger en hash-tabell som hjälper dig att ändra en hanteringsresurs. Du anger hanteringsresursen med parametrarna ResourceURI och SelectorSet . Värdet för parametern ValueSet måste vara en hash-tabell.

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Indata

None

Du kan inte skicka objekt till den här cmdleten.

Utdata

XmlElement

Den här cmdleten returnerar resultatet av åtgärden som ett XmlElement-objekt .