Compartir a través de


New-PSSessionOption

Crea un objeto que contiene las opciones avanzadas de una PSSession.

Sintaxis

New-PSSessionOption [-ApplicationArguments <PSPrimitiveDictionary>] [-CancelTimeOut <int>] [-Culture <CultureInfo>] [-IdleTimeOut <int>] [-MaximumReceivedDataSizePerCommand <int>] [-MaximumReceivedObjectSize <int>] [-MaximumRedirection <int>] [-NoCompression] [-NoEncryption] [-NoMachineProfile] [-OpenTimeOut <int>] [-OperationTimeOut <int>] [-ProxyAccessType {<None> | <IEConfig> | <WinHttpConfig> | <AutoDetect> | <NoProxyServer>}] [-ProxyAuthentication {<Default> | <Basic> | <Negotiate> | <NegotiateWithImplicitCredential> | <Credssp> | <Digest> | <Kerberos>}] [-ProxyCredential <PSCredential>] [-SkipCACheck] [-SkipCNCheck] [-SkipRevocationCheck] [-UICulture <CultureInfo>] [-UseUTF16] [<CommonParameters>]

Descripción

El cmdlet New-PSSessionOption crea un objeto que contiene las opciones avanzadas de una PSSession. Se puede utilizar el objeto como valor del parámetro SessionOption de los cmdlets que crean una PSSession; por ejemplo, New-PSSession, Enter-PSSession e Invoke-Command.

Sin parámetros, New-PSSessionOption genera un objeto que contiene los valores predeterminados para todas las opciones. Dado que se pueden editar todas las propiedades, el objeto resultante se puede utilizar como plantilla a fin de crear objetos de opción estándar para la empresa.

Parámetros

-ApplicationArguments <PSPrimitiveDictionary>

Especifica una tabla hash que se envía directamente a la configuración de sesión sin interpretación. Esta tabla hash está disponible para la configuración de sesión como propiedad de la clase PSSenderInfo.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-CancelTimeOut <int>

Determina cuánto tiempo esperará Windows PowerShell para que se complete una operación de cancelación (CTRL + C) antes de finalizarla. Especifique un valor en milisegundos.

El valor predeterminado es 60000 (un minuto). El valor 0 (cero) significa que no se aplica ningún tiempo de espera y el comando continúa indefinidamente.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

60000

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-Culture <CultureInfo>

Especifica la referencia cultural que se va a usar para la PSSession. Debe escribirse un nombre de referencia cultural en formato <códigoDeIdioma2>-<códigoDeRegiónOPaís2> (por ejemplo, "ja-jP"), una variable que contenga un objeto CultureInfo o un comando que obtenga un objeto CultureInfo, como "Get-Culture".

El valor predeterminado es $null, en cuyo caso se utiliza en la PSSession la referencia cultural que está establecida en el sistema operativo en el momento de crearla.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

Current culture

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-IdleTimeOut <int>

Determina cuánto tiempo permanece abierta la PSSession si el equipo remoto no recibe ninguna comunicación del equipo local, incluida la señal de actividad. Cuando el intervalo expira, la PSSession se cierra.

Especifique un valor en milisegundos. El valor predeterminado es 240000 (4 minutos). El valor mínimo es 60000 (1 minuto).

Si tanto el equipo local como el remoto especifican un valor de tiempo de espera inactivo, PSSession utiliza el valor de tiempo de espera más breve. El equipo local puede establecer un valor de tiempo de espera inactivo mediante este parámetro o bien en la variable de preferencia $PSSessionOption. El equipo remoto puede especificar un valor de tiempo de espera inactivo en la configuración de WS-Management (WSMAN:\localhost\shell\idletimeout).

¿Requerido?

false

¿Posición?

named

Valor predeterminado

240000

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-MaximumReceivedDataSizePerCommand <int>

Especifica el número máximo de bytes que el equipo local puede recibir del equipo remoto en un mismo comando. Especifique un valor en bytes. De forma predeterminada no existe ningún límite para el tamaño de los datos.

Esta opción está diseñada para proteger los recursos del equipo cliente.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

No limit

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-MaximumReceivedObjectSize <int>

Especifica el tamaño máximo de un objeto que el equipo local puede recibir del equipo remoto. Especifique un valor en bytes. De forma predeterminada no existe ningún límite para el tamaño de los datos.

Esta opción está diseñada para proteger los recursos del equipo cliente.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

No limit

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-MaximumRedirection <int>

Determina cuántas veces Windows PowerShell redirige una conexión a un identificador uniforme de recursos (URI) alternativo antes de que se produzca un error en la conexión. El valor predeterminado es 5. El valor 0 (cero) impide la redirección.

Esta opción se utiliza en la PSSession solamente cuando se usa el parámetro AllowRedirection en el comando de creación de la PSSession.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

5

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-NoCompression

Desactiva la compresión de paquetes en la PSSession. La compresión utiliza más ciclos de procesador, pero agiliza la transmisión.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

False

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-NoEncryption

Desactiva el cifrado de datos.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

False

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-NoMachineProfile

Evita que se cargue el perfil de Windows del usuario. En consecuencia, puede que la PSSession se cree más rápidamente, pero en ella no estarán disponibles la configuración del Registro específica del usuario ni elementos tales como variables de entorno o certificados.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

False

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-OpenTimeOut <int>

Determina cuánto tiempo espera el equipo cliente a que se establezca la conexión de la sesión. Cuando el intervalo expira, se produce un error en el comando de establecimiento de la conexión. Especifique un valor en milisegundos.

El valor predeterminado es 180000 (3 minutos). El valor 0 (cero) significa que no se aplica ningún tiempo de espera y el comando continúa indefinidamente.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

180000

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-OperationTimeOut <int>

Determina el tiempo máximo durante el que se puede ejecutar cualquier operación en la PSSession. Cuando el intervalo expira, se produce un error en la operación. Especifique un valor en milisegundos.

El valor predeterminado es 180000 (3 minutos). El valor 0 (cero) significa que no se aplica ningún tiempo de espera y la operación continúa indefinidamente.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

180000

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-ProxyAccessType <ProxyAccessType>

Determina qué mecanismo se utiliza para resolver el nombre de host. Los valores válidos son IEConfig, WinHttpConfig, AutoDetect, NoProxyServer y None. El valor predeterminado es None.

Para obtener información sobre los valores de este parámetro, vea la descripción de la enumeración System.Management.Automation.Remoting.ProxyAccessType en MSDN (Microsoft Developer Network) Library, en https://go.microsoft.com/fwlink/?LinkId=144756.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

ninguno

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-ProxyAuthentication <AuthenticationMechanism>

Especifica el método de autenticación que se utiliza para la resolución del proxy. Los valores válidos son Basic, Digest y Negotiate. El valor predeterminado es Negotiate.

Para obtener información sobre los valores de este parámetro, vea la descripción de la enumeración System.Management.Automation.Runspaces.AuthenticationMechanism en MSDN Library, en https://go.microsoft.com/fwlink/?LinkID=144382.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

Negotiate

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-ProxyCredential <PSCredential>

Especifica las credenciales que se van a usar para autenticar el proxy. Especifique una variable que contenga un objeto PSCredential o escriba un comando que lo obtenga, como Get-Credential. Si no se establece esta opción, no se especifica ninguna credencial.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

ninguno

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-SkipCACheck

Especifica que, al establecer una conexión a través de HTTPS, el cliente no valida que el certificado de servidor esté firmado por una entidad de certificación de confianza.

Esta opción debe usarse únicamente si el equipo remoto es de confianza por medio de otro mecanismo, por ejemplo, si forma parte de una red físicamente protegida y aislada, o si aparece como host de confianza en una configuración de WinRM.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

False

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-SkipCNCheck

Especifica que el nombre común (CN) de certificado del servidor no necesita coincidir con el nombre de host del servidor. Esta opción se usa únicamente en operaciones remotas que utilizan el protocolo HTTPS.

Se debe utilizar solamente para equipos de confianza.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

False

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-SkipRevocationCheck

No valida el estado de revocación del certificado de servidor.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

False

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-UICulture <CultureInfo>

Especifica la referencia cultural de la IU que se va a usar para la PSSession.

Debe escribirse un nombre de referencia cultural en formato <códigoDeIdioma2>-<códigoDeRegiónOPaís2> (por ejemplo, "ja-jP"), una variable que contenga un objeto CultureInfo o un comando que obtenga un objeto CultureInfo, como Get-Culture.

El valor predeterminado es $null, en cuyo caso se utiliza en la PSSession la referencia cultural de IU que está establecida en el sistema operativo en el momento de crearla.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

Current UI culture

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

-UseUTF16

La solicitud debe codificarse en formato UTF16 en vez de UTF8.

¿Requerido?

false

¿Posición?

named

Valor predeterminado

False (UTF8 encoding)

¿Aceptar canalización?

false

¿Aceptar caracteres comodín?

false

<CommonParameters>

Este cmdlet admite los parámetros comunes: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer y -OutVariable. Para obtener más información, vea about_Commonparameters.

Entradas y salidas

El tipo de entrada es el tipo de los objetos que se pueden canalizar al cmdlet. El tipo devuelto es el tipo de los objetos que el cmdlet devuelve.

Entradas

Ninguno

No se pueden canalizar entradas a este cmdlet.

Salidas

System.Management.Automation.Remoting.PSSessionOption

Notas

Si el parámetro SessionOption no se utiliza en un comando de creación de una PSSession, los valores de propiedad de la variable de preferencia $PSSessionOption (si se establece) determinan las opciones de la sesión. Para obtener más información acerca de la variable $PSSessionOption, vea about_Preference_Variables.

Ejemplo 1

C:\PS>New-PSSessionOption


MaximumConnectionRedirectionCount : 5
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         :
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:03:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

Descripción
-----------
Este comando crea un objeto de opciones de sesión con todos los valores predeterminados.





Ejemplo 2

C:\PS>$pso = new-pssessionoption -Culture "fr-fr" -MaximumReceivedObjectSize 10MB

C:\PS> new-pssession -computerName Server01 -SessionOption $pso

Descripción
-----------
En este ejemplo se muestra cómo utilizar un objeto de opciones de sesión para configurar una sesión.

El primer comando crea un nuevo objeto de opciones de sesión y lo guarda en el valor de la variable $pso.

El segundo comando utiliza el cmdlet New-PSSession para crear una PSSession en el equipo remoto Server01. El comando utiliza el objeto de opciones de sesión contenido en el valor de la variable $pso como valor del parámetro SessionOption del comando.





Ejemplo 3

C:\PS>enter-pssession -computername Server01 -sessionOption (new-pssessionoption -noEncryption -noCompression)

Descripción
-----------
Este primer comando utiliza el cmdlet Enter-PSSession para iniciar una sesión interactiva con el equipo Server01. El valor del parámetro SessionOption es un comando New-PSSessionOption con los parámetros de modificador NoEncryption y NoCompression.

El comando New-PSSessionOption se coloca entre paréntesis para asegurarse de que se ejecuta antes que el comando Enter-PSSession.





Ejemplo 4

C:\PS>$a = new-pssessionoption


MaximumConnectionRedirectionCount : 5
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         :
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:03:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

C:\PS> $a.UICulture = (get-UICulture)
C:\PS> $a.OpenTimeout = (new-timespan -minutes 4)
C:\PS> $a.MaximumConnectionRedirectionCount = 1

C:\PS> $a

MaximumConnectionRedirectionCount : 1
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         : en-US
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:04:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

Descripción
-----------
En este ejemplo se demuestra que es posible modificar el objeto de opciones de sesión. Todas las propiedades tienen valores de lectura y escritura.

Este método se utiliza para crear un objeto de sesión estándar para la empresa y, a continuación, crear versiones personalizadas de él para usos específicos.





Ejemplo 5

C:\PS>$PSSessionOption = New-PSSessionOption -OpenTimeOut 120000

Descripción
-----------
Este comando crea una variable de preferencia $PSSessionOption. 

Cuando la variable de preferencia $PSSessionOption existe en la sesión, establece los valores predeterminados de las opciones de las PSSessions creadas mediante los cmdlets New-PSSession, Enter-PSSession e Invoke-Command.

Para que la variable $PSSessionOption esté disponible en todas las sesiones, debe agregarse a la sesión de Windows PowerShell y al perfil de Windows PowerShell del usuario.

Para obtener más información acerca de la variable $PSSessionOption, vea about_Preference_Variables. Para obtener más información sobre perfiles, vea about_Profiles.





Ejemplo 6

C:\PS>$skipCN = new-pssessionoption -SkipCNCheck

C:\PS> new-pssession -computername 171.09.21.207 -UseSSL -credential domain01\user01 -sessionOption $skipCN

Descripción
-----------
En este ejemplo se muestra cómo utilizar un objeto SessionOption para cumplir los requisitos de una configuración de sesión remota.

El primer comando utiliza el cmdlet New-PSSessionOption para crear un objeto de opciones de sesión con la propiedad SkipCNCheck. El comando guarda el objeto de sesión resultante en la variable $skipCN.

El segundo comando utiliza el cmdlet New-PSSession para crear una PSSession nueva en un equipo remoto. La variable de comprobación $skipCN se utiliza en el valor del parámetro SessionOption. 

Dado que el equipo se identifica mediante su dirección IP, el valor del parámetro ComputerName no coincide con ninguno de los nombres comunes del certificado utilizado para el protocolo Capa de sockets seguros (SSL). En consecuencia, se requiere la opción SkipCNCheck.





Vea también

Conceptos

Enter-PSSession
New-PSSession
Invoke-Command