Crea un oggetto che contiene opzioni avanzate per una sessione PSSession.

Sintassi

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

Descrizione

Il cmdlet New-PSSessionOption crea un oggetto che contiene opzioni avanzate per una sessione PSSession. È possibile utilizzare l'oggetto come valore del parametro SessionOption di cmdlet che creano una sessione PSSession, ad esempio New-PSSession, Enter-PSSession e Invoke-Command.

Senza parametri, New-PSSessionOption genera un oggetto che contiene i valori predefiniti per tutte le opzioni. Poiché è possibile modificare tutte le proprietà, è possibile utilizzare l'oggetto risultante come modello e creare oggetti opzione standard per l'organizzazione.

Parametri

-ApplicationArguments <PSPrimitiveDictionary>

Specifica una tabella hash inviata direttamente alla configurazione di sessione senza interpretazione. Questa tabella hash è disponibile alla configurazione di sessione come una proprietà della classe PSSenderInfo.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-CancelTimeOut <int>

Determina per quanto tempo Windows PowerShell attende il completamento di un'operazione di annullamento (CTRL + C) prima di terminarla. Immettere un valore in millisecondi.

Il valore predefinito è 60000 (un minuto). Un valore pari a 0 (zero) corrisponde all'assenza di timeout, pertanto il comando continua all'infinito.

Obbligatorio?

false

Posizione?

named

Valore predefinito

60000

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Culture <CultureInfo>

Specifica le impostazioni cultura da utilizzare per la sessione PSSession. Immettere un nome di impostazioni cultura in formato <codicelingua2>-<codicepaese2>, ad esempio "ja-JP", una variabile che contiene un oggetto CultureInfo o un comando che ottiene un oggetto CultureInfo, ad esempio Get-Culture.

Il valore predefinito è $null e per la sessione PSSession vengono utilizzate le impostazioni cultura del sistema operativo al momento della creazione della sessione stessa.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Current culture

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-IdleTimeout <int>

Determina per quanto tempo rimane aperta la sessione PSSession se il computer remoto non riceve alcuna comunicazione dal computer locale, incluso il segnale di heartbeat. Alla scadenza dell'intervallo, la sessione PSSession viene chiusa.

Immettere un valore in millisecondi. Il valore predefinito è 240000 (4 minuti). Il valore minimo è 60000 (1 minuto).

Se entrambi i computer locale e remoto specificano un valore di timeout di inattività, la sessione PSSession utilizza il valore di timeout più breve. Nel computer locale è possibile impostare un valore di timeout di inattività tramite questo parametro o nella variabile di preferenza $PSSessionOption. Nel computer remoto è possibile specificare un valore di timeout di inattività nella configurazione di WS-Management (WSMAN:\localhost\shell\idletimeout).

Obbligatorio?

false

Posizione?

named

Valore predefinito

240000

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-MaximumReceivedDataSizePerCommand <int>

Specifica il numero massimo di byte che il computer locale può ricevere dal computer remoto in un solo comando. Immettere un valore in byte. Per impostazione predefinita non vi è alcun limite nelle dimensioni dei dati.

Questa opzione ha lo scopo di proteggere le risorse nel computer client.

Obbligatorio?

false

Posizione?

named

Valore predefinito

No limit

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-MaximumReceivedObjectSize <int>

Specifica le dimensioni massime di un oggetto che il computer locale può ricevere dal computer remoto. Immettere un valore in byte. Per impostazione predefinita non vi è alcun limite nelle dimensioni dei dati.

Questa opzione ha lo scopo di proteggere le risorse nel computer client.

Obbligatorio?

false

Posizione?

named

Valore predefinito

No limit

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-MaximumRedirection <int>

Determina quante volte una connessione viene reindirizzata da Windows PowerShell a un URI alternativo prima che venga interrotta. Il valore predefinito è 5. Con un valore pari a 0 (zero) non viene effettuato alcun reindirizzamento.

Questa opzione viene utilizzata nella sessione PSSession solo quando nel comando che crea la sessione viene utilizzato il parametro AllowRedirection.

Obbligatorio?

false

Posizione?

named

Valore predefinito

5

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-NoCompression

Disattiva la compressione dei pacchetti nella sessione PSSession. Per la compressione vengono utilizzati più cicli del processore, ma la trasmissione è più veloce.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-NoEncryption

Disattiva la crittografia dei dati.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-NoMachineProfile

Impedisce che venga caricato il profilo utente Windows dell'utente. In tal modo le sessioni PSSession possono essere create più velocemente, ma le impostazioni del Registro di sistema specifiche dell'utente, elementi quali le variabili di ambiente e i certificati non saranno disponibili nella sessione PSSession.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-OpenTimeOut <int>

Determina per quanto tempo il computer client attende che venga stabilita la connessione della sessione. Al termine dell'intervallo, il comando con cui viene stabilita la connessione ha esito negativo. Immettere un valore in millisecondi.

Il valore predefinito è 180000 (3 minuti). Un valore pari a 0 (zero) corrisponde all'assenza di timeout, pertanto il comando continua all'infinito.

Obbligatorio?

false

Posizione?

named

Valore predefinito

180000

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-OperationTimeOut <int>

Determina il tempo massimo di esecuzione di qualsiasi operazione nella sessione PSSession. Al termine dell'intervallo, l'operazione ha esito negativo. Immettere un valore in millisecondi.

Il valore predefinito è 180000 (3 minuti). Un valore pari a 0 (zero) corrisponde all'assenza di timeout, pertanto l'operazione continua all'infinito.

Obbligatorio?

false

Posizione?

named

Valore predefinito

180000

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-ProxyAccessType <ProxyAccessType>

Determina il meccanismo utilizzato per risolvere il nome host. I valori validi sono IEConfig, WinHttpConfig, AutoDetect, NoProxyServer e None. Il valore predefinito è None.

Per informazioni sui valori di questo parametro, vedere la descrizione dell'enumerazione System.Management.Automation.Remoting.ProxyAccessType in MSDN Library all'indirizzo https://go.microsoft.com/fwlink/?LinkId=144756 (le informazioni potrebbero essere in lingua inglese).

Obbligatorio?

false

Posizione?

named

Valore predefinito

nessuno

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-ProxyAuthentication <AuthenticationMechanism>

Specifica il metodo di autenticazione utilizzato per la risoluzione proxy. I valori validi sono Basic, Digest e Negotiate. Il valore predefinito è Negotiate.

Per informazioni sui valori di questo parametro, vedere la descrizione dell'enumerazione System.Management.Automation.Runspaces.AuthenticationMechanism in MSDN Library all'indirizzo https://go.microsoft.com/fwlink/?LinkID=144382 (le informazioni potrebbero essere in lingua inglese).

Obbligatorio?

false

Posizione?

named

Valore predefinito

Negotiate

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-ProxyCredential <PSCredential>

Specifica le credenziali da utilizzare per l'autenticazione proxy. Immettere una variabile che contiene un oggetto PSCredential o un comando che ottiene un oggetto PSCredential, ad esempio Get-Credential. Se questa opzione non viene impostata, non viene specificata alcuna credenziale.

Obbligatorio?

false

Posizione?

named

Valore predefinito

nessuno

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-SkipCACheck

Specifica che durante la connessione a HTTPS, il client non convalida il fatto che il certificato del server sia firmato da un'autorità di certificazione (CA) attendibile.

Utilizzare questa opzione solo quando il computer remoto è considerato attendibile mediante altri meccanismi, ad esempio quando il computer remoto fa parte di una rete fisicamente sicura e isolata o è elencato come host attendibile in una configurazione WinRM.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-SkipCNCheck

Specifica che non è necessario che il nome comune del certificato del server corrisponda al nome host del server. Questa opzione è utilizzata solo in operazioni remote che utilizzano il protocollo HTTPS.

Utilizzare questa opzione solo per i computer attendibili.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-SkipRevocationCheck

Non convalida lo stato della revoca del certificato server.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-UICulture <CultureInfo>

Specifica le impostazioni cultura dell'interfaccia utente da utilizzare per la sessione PSSession.

Immettere un nome di impostazioni cultura in formato <codicelingua2>-<codicepaese2>, ad esempio "ja-JP", una variabile che contiene un oggetto CultureInfo o un comando che ottiene un oggetto CultureInfo, ad esempio Get-Culture.

Il valore predefinito è $null e per la sessione PSSession vengono utilizzate le impostazioni cultura dell'interfaccia utente impostate nel sistema operativo al momento della creazione della sessione stessa.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Current UI culture

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-UseUTF16

La richiesta viene codificata in formato UTF16 anziché in formato UTF8.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False (UTF8 encoding)

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

Nessuno

Non è possibile reindirizzare l'input a questo cmdlet.

Output

System.Management.Automation.Remoting.PSSessionOption

Note

Se il parametro SessionOption non viene utilizzato in un comando per creare una sessione PSSession, le opzioni della sessione sono determinate dai valori della proprietà della variabile di preferenza $PSSessionOption, se impostato. Per ulteriori informazioni sulla variabile di preferenza $PSSessionOption, vedere about_Preference_Variables.

Esempio 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

Descrizione
-----------
Questo comando crea un oggetto opzione di sessione con tutti i valori predefiniti.






Esempio 2

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

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

Descrizione
-----------
In questo esempio viene illustrato come utilizzare un oggetto opzione di sessione per configurare una sessione.

Con il primo comando un nuovo oggetto opzione di sessione viene creato e salvato nel valore della variabile $pso.

Nel secondo comando viene utilizzato il cmdlet New-PSSession per creare una sessione PSSession nel computer remoto Server01. L'oggetto opzione di sessione nel valore della variabile $pso viene utilizzato come valore del parametro SessionOption del comando.






Esempio 3

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

Descrizione
-----------
In questo comando viene utilizzato il cmdlet Enter-PSSession per avviare una sessione interattiva con il computer Server01. Il valore del parametro SessionOption è un comando New-PSSessionOption con i parametri opzionali NoEncryption e NoCompression.

Il comando New-PSSessionOption è racchiuso tra parentesi per garantire che venga eseguito prima del comando Enter-PSSession.






Esempio 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

Descrizione
-----------
In questo esempio viene illustrato che è possibile modificare l'oggetto opzione di sessione. Tutte le proprietà hanno valori di lettura/scrittura.

Utilizzare questo metodo per creare un oggetto sessione standard per l'organizzazione, quindi creare versioni personalizzate di tale oggetto per utilizzi specifici.






Esempio 5

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

Descrizione
-----------
Questo comando crea una variabile di preferenza $PSSessionOption. 

Quando la variabile di preferenza $PSSessionOption è presente nella sessione, stabilisce valori predefiniti per le opzioni nelle sessioni PSSession create utilizzando i cmdlet New-PSSession, Enter-PSSession e Invoke-Command.

Per rendere disponibile in tutte le sessioni la variabile $PSSessionOption, aggiungerla alla sessione e al profilo di Windows PowerShell.

Per ulteriori informazioni sulla variabile di preferenza $PSSessionOption, vedere about_Preference_Variables. Per ulteriori informazioni sui profili, vedere about_Profiles.






Esempio 6

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

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

Descrizione
-----------
In questo esempio viene illustrato come utilizzare un oggetto SessionOption per soddisfare i requisiti per la configurazione di una sessione remota.

Il primo comando utilizza il cmdlet New-PSSessionOption per creare un oggetto opzione di sessione con la proprietà SkipCNCheck. L'oggetto sessione risultante viene salvato nella variabile $skipCN.

Nel secondo comando viene utilizzato il cmdlet New-PSSession per creare una nuova sessione PSSession in un computer remoto. La variabile di controllo $skipCN viene utilizzata nel valore del parametro SessionOption. 

Poiché il computer viene identificato in base all'indirizzo IP, il valore del parametro ComputerName non corrisponde ad alcun nome comune nel certificato utilizzato per Secure Sockets Layer (SSL). Di conseguenza, è obbligatoria l'opzione SkipCNCheck.






Vedere anche




Argomenti della Guida