Invoke-WSManAction
Invoca una acción en el objeto especificado por el URI de recurso y por los selectores.
Sintaxis
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
El Invoke-WSManAction ejecuta una acción en el objeto especificado por RESOURCE_URI, donde los parámetros se especifican mediante pares de valor de clave.
Este cmdlet usa la capa de conexión o transporte WSMan para ejecutar la acción.
Ejemplos
Ejemplo 1
Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service -SelectorSet @{name="spooler"} -Authentication default
xsi : http://www.w3.org/2001/XMLSchema-instance
p : https://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
Este comando llama al método StartService de la instancia de clase WMI de Win32_Service que corresponde al servicio Spooler.
El valor devuelto indica si la acción se realizó correctamente. En este caso, un valor devuelto de 0 indica que se ha realizado correctamente. Un valor devuelto de 5 indica que el servicio ya se ha iniciado.
Ejemplo 2
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 : https://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
Este comando llama al método StopService en el servicio Spooler mediante la entrada de un archivo. El archivo, Input.xml, contiene el siguiente contenido:
<p:StopService_INPUT xmlns:p="https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />
El valor devuelto indica si la acción se realizó correctamente. En este caso, un valor devuelto de 0 indica que se ha realizado correctamente. Un valor devuelto de 5 indica que el servicio ya se ha iniciado.
Ejemplo 3
Invoke-WSManAction -Action create -ResourceURI wmicimv2/win32_process -ValueSet @{commandline="notepad.exe";currentdirectory="C:\"}
xsi : http://www.w3.org/2001/XMLSchema-instance
p : https://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
Este comando llama al método Create de la clase Win32_Process. Pasa el método dos valores de parámetro, Notepad.exe y "C:". Como resultado, se crea un nuevo proceso para ejecutar el Bloc de notas y el directorio actual del nuevo proceso se establece en "C:".
Ejemplo 4
Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service -SelectorSet @{name="spooler"} -ComputerName server01 -Authentication default
xsi : http://www.w3.org/2001/XMLSchema-instance
p : https://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
Este comando llama al método StartService de la instancia de clase WMI de Win32_Service que corresponde al servicio Spooler. Dado que se especifica el parámetro ComputerName, el comando se ejecuta en el equipo remoto server01.
El valor devuelto indica si la acción se realizó correctamente. En este caso, un valor devuelto de 0 indica que se ha realizado correctamente. Un valor devuelto de 5 indica que el servicio ya se ha iniciado.
Parámetros
-Action
Especifica el método que se va a ejecutar en el objeto de administración especificado por el ResourceURI y los selectores.
Tipo: | String |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ApplicationName
Especifica el nombre de la aplicación en la conexión. El valor predeterminado del parámetro ApplicationName es WSMAN. El identificador completo del punto de conexión remoto tiene el siguiente formato:
<transporte>://<servidor>:<puerto>/<ApplicationName>
Por ejemplo:
http://server01:8080/WSMAN
Internet Information Services (IIS), que hospeda la sesión, reenvía las solicitudes con este punto de conexión a la aplicación especificada. Esta configuración predeterminada de "WSMAN" es adecuada para la mayoría de los usos. Este parámetro está diseñado para usarse cuando numerosos equipos establecen conexiones remotas a un equipo que ejecuta Windows PowerShell. En este caso, IIS hospeda servicios web para administración (WS-Management) para mejorar la eficacia.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | Wsman |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Authentication
Especifica el mecanismo de autenticación que se va a usar en el servidor. Los valores posibles son:
- Básico: Básico es un esquema en el que el nombre de usuario y la contraseña se envían en texto no cifrado al servidor o proxy.
- Valor predeterminado: use el método de autenticación implementado por el protocolo WS-Management. Este es el valor predeterminado.
- Resumen: el resumen es un esquema de desafío-respuesta que usa una cadena de datos especificada por el servidor para el desafío.
- Kerberos: el equipo cliente y el servidor se autentican mutuamente mediante certificados Kerberos.
- Negociar: Negotiate es un esquema de desafío-respuesta que negocia con el servidor o proxy para determinar el esquema que se va a usar para la autenticación. Por ejemplo, este valor de parámetro permite a la negociación determinar si se usa el protocolo Kerberos o NTLM.
- CredSSP: use la autenticación del proveedor de soporte técnico de seguridad de credenciales (CredSSP), que permite al usuario delegar credenciales. Esta opción está diseñada para comandos que se ejecutan en un equipo remoto, pero recopilan datos de o ejecutan comandos adicionales en otros equipos remotos.
Precaución: CredSSP delega las credenciales del usuario desde el equipo local a un equipo remoto. Esta práctica aumenta el riesgo de seguridad de la operación remota. Si el equipo remoto está en peligro, cuando se le pasan las credenciales, las credenciales se pueden usar para controlar la sesión de red.
Tipo: | AuthenticationMechanism |
Alias: | auth, am |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-CertificateThumbprint
Especifica el certificado de clave pública digital (X509) de una cuenta de usuario que tiene permiso para realizar esta acción. Escriba la huella digital del certificado.
Los certificados se usan en la autenticación basada en certificados de cliente. Solo se pueden asignar a cuentas de usuario locales; no funcionan con cuentas de dominio.
Para obtener una huella digital de certificado, use el comando Get-Item o Get-ChildItem en la unidad Certificado de Windows PowerShell: .
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ComputerName
Especifica el equipo en el que desea ejecutar la operación de administración. El valor puede ser un nombre de dominio completo, un nombre NetBIOS o una dirección IP. Use el nombre del equipo local, use localhost o use un punto (.) para especificar el equipo local. El equipo local es el valor predeterminado. Cuando el equipo remoto está en un dominio diferente del usuario, debe usar un nombre de dominio completo. Puede canalizar un valor para este parámetro al cmdlet .
Tipo: | String |
Alias: | cn |
Posición: | Named |
Valor predeterminado: | Localhost |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ConnectionURI
Especifica el punto de conexión. El formato de esta cadena es:
<transport>://<Server>:<Port>/<ApplicationName>
La cadena siguiente es un valor con formato correcto para este parámetro:
http://Server01:8080/WSMAN
El URI debe estar completo.
Tipo: | Uri |
Alias: | CURI, CU |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Credential
Especifica una cuenta de usuario que tiene permiso para realizar esta acción. El valor predeterminado es el usuario actual. Escriba un nombre de usuario, como "User01", "Domain01\User01" o User@Domain.com. O bien, escriba un objeto PSCredential, como uno devuelto por el cmdlet Get-Credential. Al escribir un nombre de usuario, se le pedirá una contraseña.
Tipo: | PSCredential |
Alias: | cred, c |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-FilePath
Especifica la ruta de acceso de un archivo que se usa para actualizar un recurso de administración. Especifique el recurso de administración mediante el parámetro ResourceURI y el parámetro SelectorSet. Por ejemplo, el siguiente comando usa el parámetro FilePath:
invoke-wsmanaction -action stopservice -resourceuri wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath:c:\input.xml -authentication default
Este comando llama al método StopService en el servicio Spooler mediante la entrada de un archivo. El archivo, Input.xml, contiene el siguiente contenido:
<p:StopService_INPUT xmlns:p="https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-OptionSet
Pasa un conjunto de modificadores a un servicio para modificar o refinar la naturaleza de la solicitud. Son similares a los modificadores que se usan en los shells de línea de comandos porque son específicos del servicio. Se puede especificar cualquier número de opciones.
En el ejemplo siguiente se muestra la sintaxis que pasa los valores 1, 2 y 3 para los parámetros a, b y c:
-OptionSet @{a=1; b=2; c=3}
Tipo: | Hashtable |
Alias: | os |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Port
Especifica el puerto que se va a usar cuando el cliente se conecta al servicio WinRM. Cuando el transporte es HTTP, el puerto predeterminado es 80. Cuando el transporte es HTTPS, el puerto predeterminado es 443. Cuando se usa HTTPS como transporte, el valor del parámetro ComputerName debe coincidir con el nombre común (CN) del certificado del servidor. Sin embargo, si el parámetro SkipCNCheck se especifica como parte del parámetro SessionOption, el nombre común del certificado del servidor no tiene que coincidir con el nombre de host del servidor. El parámetro SkipCNCheck solo debe usarse para máquinas de confianza.
Tipo: | Int32 |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ResourceURI
Contiene el identificador uniforme de recursos (URI) de la clase o instancia de recursos. El URI se usa para identificar un tipo específico de recurso, como discos o procesos, en un equipo.
Un URI consta de un prefijo y una ruta de acceso a un recurso. Por ejemplo:
https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor
Tipo: | Uri |
Alias: | ruri |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-SelectorSet
Especifica un conjunto de pares de valores que se usan para seleccionar instancias de recursos de administración concretas. selectorSet se usa cuando existe más de una instancia del recurso. El valor de SelectorSet debe ser una tabla hash.
En el ejemplo siguiente se muestra cómo escribir un valor para este parámetro:
-SelectorSet @{Name="WinRM";ID="yyy"}
Tipo: | Hashtable |
Posición: | 2 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-SessionOption
Define un conjunto de opciones extendidas para la sesión de WS-Management. Escriba un objeto SessionOption que cree mediante el cmdlet New-WSManSessionOption. Para obtener más información sobre las opciones disponibles, vea New-WSManSessionOption.
Tipo: | SessionOption |
Alias: | so |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-UseSSL
Especifica que el protocolo Capa de sockets seguros (SSL) se usa para establecer una conexión con el equipo remoto. De forma predeterminada, no se usa SSL.
WS-Management cifra todo el contenido de PowerShell que se transmite a través de la red. El parámetro UseSSL permite especificar la protección adicional de HTTPS en lugar de HTTP. Si SSL no está disponible en el puerto que se usa para la conexión y especifica este parámetro, se produce un error en el comando.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ValueSet
Especifica una tabla hash que ayuda a modificar un recurso de administración. Especifique el recurso de administración mediante los parámetros ResourceURI y SelectorSet. El valor del parámetro ValueSet debe ser una tabla hash.
Tipo: | Hashtable |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Entradas
None
Este cmdlet no acepta ninguna entrada.
Salidas
None
Este cmdlet no genera ninguna salida.