Condividi tramite


New-CimSession

Crea una sessione CIM.

Sintassi

New-CimSession
   [-Authentication <PasswordAuthenticationMechanism>]
   [[-Credential] <PSCredential>]
   [[-ComputerName] <String[]>]
   [-Name <String>]
   [-OperationTimeoutSec <UInt32>]
   [-SkipTestConnection]
   [-Port <UInt32>]
   [-SessionOption <CimSessionOptions>]
   [<CommonParameters>]
New-CimSession
   [-CertificateThumbprint <String>]
   [[-ComputerName] <String[]>]
   [-Name <String>]
   [-OperationTimeoutSec <UInt32>]
   [-SkipTestConnection]
   [-Port <UInt32>]
   [-SessionOption <CimSessionOptions>]
   [<CommonParameters>]

Descrizione

Questo cmdlet è disponibile solo nella piattaforma Windows.

Il New-CimSession cmdlet crea una sessione CIM. Una sessione CIM è un oggetto lato client che rappresenta una connessione a un computer locale o a un computer remoto. La sessione CIM contiene informazioni sulla connessione, ad esempio ComputerName, il protocollo usato o vari identificatori.

Questo cmdlet restituisce un oggetto sessione CIM che può essere usato da tutti gli altri cmdlet CIM.

Esempio

Esempio 1: Creare una sessione CIM con le opzioni predefinite

In questo esempio viene creata una sessione CIM locale con le opzioni predefinite. Se ComputerName non è specificato, New-CimSession crea una sessione DCOM nel computer locale.

New-CimSession

Esempio 2: Creare una sessione CIM in un computer specifico

In questo esempio viene creata una sessione CIM nel computer specificato da ComputerName. Per impostazione predefinita, New-CimSession crea una sessione WSMan quando si specifica ComputerName .

New-CimSession -ComputerName Server01

Esempio 3: Creare una sessione CIM in più computer

In questo esempio viene creata una sessione CIM in ognuno dei computer specificati da ComputerName, nell'elenco delimitato da virgole.

New-CimSession -ComputerName Server01,Server02,Server03

Esempio 4: Creare una sessione CIM con un nome descrittivo

In questo esempio viene creata una sessione CIM remota a ognuno dei computer specificati da ComputerName, nell'elenco delimitato da virgole e viene assegnato un nome descrittivo alle nuove sessioni specificando Name.

New-CimSession -ComputerName Server01,Server02 -Name FileServers
Get-CimSession -Name File*

È possibile usare il nome descrittivo di una sessione CIM per fare riferimento alla sessione in altri cmdlet CIM, ad esempio Get-CimSession.

Esempio 5: Creare una sessione CIM in un computer usando un oggetto PSCredential

In questo esempio viene creata una sessione CIM nel computer specificato da ComputerName, usando l'oggetto PSCredential specificato da Credential e il tipo di autenticazione specificato dall'autenticazione.

New-CimSession -ComputerName Server01 -Credential $cred -Authentication Negotiate

È possibile creare un oggetto PSCredential usando il Get-Credential cmdlet .

Esempio 6: Creare una sessione CIM in un computer usando una porta specifica

In questo esempio viene creata una sessione CIM nel computer specificato da ComputerName usando la porta TCP specificata da Port.

New-CimSession -ComputerName Server01 -Port 1234

Esempio 7: Creare una sessione CIM con DCOM

In questo esempio viene creata una sessione CIM usando il protocollo DCOM (Distributed COM) anziché WSMan.

$SessionOption = New-CimSessionOption -Protocol DCOM
New-CimSession -ComputerName Server1 -SessionOption $SessionOption

Parametri

-Authentication

Specifica il tipo di autenticazione usato per le credenziali dell'utente. I valori validi per questo parametro sono:

  • Predefiniti
  • Digest
  • Negotiate
  • Di base
  • Kerberos
  • NtlmDomain
  • CredSsp

Non è possibile utilizzare il tipo di autenticazione NtlmDomain per la connessione al computer locale. L'autenticazione CredSSP è disponibile solo in Windows Vista, Windows Server 2008 e versioni successive di Windows.

Attenzione

L'autenticazione credSSP (Credential Security Service Provider) è progettata per i comandi che richiedono l'autenticazione in più di una risorsa, ad esempio l'accesso a una condivisione di rete remota. Questo meccanismo aumenta il rischio per la sicurezza dell'operazione remota. Se infatti il computer remoto viene compromesso, le credenziali che gli vengono passate possono essere usate per controllare la sessione di rete.

Tipo:PasswordAuthenticationMechanism
Valori accettati:Default, Digest, Negotiate, Basic, Kerberos, NtlmDomain, CredSsp
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-CertificateThumbprint

Specifica il certificato di chiave pubblica digitale (X.509) di un account utente autorizzato a eseguire questa azione. Immettere l'identificazione personale del certificato.

I certificati vengono usati nell'autenticazione basata sui certificati client. Possono essere mappati solo ad account utente locali. Non funzionano con gli account di dominio.

Per ottenere un'identificazione personale del certificato, usare i Get-Item cmdlet o Get-ChildItem nel provider di certificati PowerShell.

Per altre informazioni, vedere about_Certificate_Provider.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-ComputerName

Specifica il nome del computer in cui creare la sessione CIM. Specificare un singolo nome computer o più nomi di computer separati da una virgola.

Se ComputerName non è specificato, viene creata una sessione CIM nel computer locale. È possibile specificare il valore per il nome del computer in uno dei formati seguenti:

  • Uno o più nomi NetBIOS
  • Uno o più indirizzi IP
  • Uno o più nomi di dominio completi.

Se il computer si trova in un dominio diverso dall'utente, è necessario specificare il nome di dominio completo.

Tipo:String[]
Alias:CN, ServerName
Posizione:1
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Credential

Specifica un account utente che dispone delle autorizzazioni per eseguire questa azione. Se non si specifica Credential , viene usato l'account utente corrente.

Specificare il valore per Credential usando uno dei formati seguenti:

  • Nome utente: "User01"
  • Un nome di dominio e un nome utente: "Domain01\User01"
  • Nome dell'entità utente: "User@Domain.com"
  • Oggetto PSCredential, ad esempio uno restituito dal Get-Credential cmdlet .

Quando si digita un nome utente, viene richiesta una password.

Tipo:PSCredential
Posizione:2
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Name

Specifica un nome descrittivo per la sessione CIM.

È possibile usare il nome per fare riferimento alla sessione CIM quando si usano altri cmdlet, ad esempio il cmdlet Get-CimSession . Il nome non deve essere univoco per il computer o la sessione corrente.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-OperationTimeoutSec

Durata per cui il cmdlet attende una risposta dal server.

Per impostazione predefinita, il valore di questo parametro è 0, il che significa che il cmdlet usa il valore di timeout predefinito per il server.

Se il parametro OperationTimeoutSec è impostato su un valore inferiore al timeout di tentativo di connessione affidabile di 3 minuti, gli errori di rete che durano più del valore del parametro OperationTimeoutSec non sono recuperabili, perché l'operazione sul server scade prima che il client possa riconnettersi.

Tipo:UInt32
Alias:OT
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Port

Specifica la porta di rete nel computer remoto utilizzata per questa connessione. Per connettersi a un computer remoto, è necessario che il computer remoto sia in attesa sulla porta usata dalla connessione. Le porte predefinite sono 5985 (la porta WinRM per HTTP) e 5986 (la porta WinRM per HTTPS).

Prima di usare una porta alternativa, è necessario configurare il listener di Gestione remota Windows nel computer remoto per l'ascolto su tale porta. Usare i comandi seguenti per configurare il listener:

winrm delete winrm/config/listener?Address=*+Transport=HTTP

winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number>"}

Non usare il parametro Port a meno che non sia necessario. L'impostazione della porta nel comando si applica a tutti i computer o tutte le sessioni in cui viene eseguito il comando. Un'impostazione di porta alternativa potrebbe impedire l'esecuzione del comando in tutti i computer.

Tipo:UInt32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-SessionOption

Imposta le opzioni avanzate per la nuova sessione CIM. Immettere il nome di un oggetto CimSessionOption creato usando il New-CimSessionOption cmdlet .

Tipo:CimSessionOptions
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-SkipTestConnection

Per impostazione predefinita, il New-CimSession cmdlet stabilisce una connessione con un endpoint WS-Management remoto per due motivi: per verificare che il server remoto sia in ascolto sul numero di porta specificato usando il parametro Port e per verificare le credenziali dell'account specificate. La verifica viene eseguita usando un'operazione WS-Identity standard. È possibile aggiungere il parametro dell'opzione SkipTestConnection se l'endpoint WS-Management remoto non può usare WS-Identify o ridurre il tempo di trasmissione dei dati.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

Input

None

Non è possibile inviare tramite pipe oggetti a questo cmdlet.

Output

CimSession

Questo cmdlet restituisce un oggetto sessione CIM.

Note

PowerShell include gli alias seguenti per New-CimSession:

  • Windows:
    • ncms

Questo cmdlet è disponibile solo nelle piattaforme Windows.