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

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 per la connessione, l'ID sessione e l'ID istanza.

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

Esempio

Esempio 1: Create una sessione CIM con opzioni predefinite

New-CimSession

Questo comando crea una sessione CIM locale con opzioni predefinite. Se ComputerName non è specificato, New-CimSession crea una sessione DCOM nel computer locale.

Esempio 2: Create una sessione CIM in un computer specifico

New-CimSession -ComputerName Server01

Questo comando crea una sessione CIM nel computer specificato da ComputerName. Per impostazione predefinita, New-CimSession crea una sessione WsMan quando viene specificato ComputerName .

Esempio 3: Create una sessione CIM a più computer

New-CimSession -ComputerName Server01,Server02,Server03

Questo comando crea una sessione CIM a ognuno dei computer specificati da ComputerName, nell'elenco delimitato da virgole.

Esempio 4: Create una sessione CIM con un nome descrittivo

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

New-CimSession -ComputerName Server01,Server02 -Name FileServers

Get-CimSession -Name File*

Questo comando crea una sessione CIM remota a ognuno dei computer specificati da ComputerName, nell'elenco delimitato da virgole e assegna un nome descrittivo alle nuove sessioni specificando Nome.

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

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

Questo comando crea una sessione CIM al computer specificato da ComputerName, usando l'oggetto PSCredential specificato da Credential e il tipo di autenticazione specificato dall'autenticazione.

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

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

New-CimSession -ComputerName Server01 -Port 1234

Questo comando crea una sessione CIM nel computer specificato da ComputerName usando la porta TCP specificata da Porta.

Esempio 7: Create una sessione CIM usando DCOM

$SessionOption = New-CimSessionOption -Protocol DCOM

New-CimSession -ComputerName Server1 -SessionOption $SessionOption

Questo comando crea una sessione CIM usando il protocollo DCOM (Distributed COM) anziché WSMan.

Parametri

-Authentication

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

  • Default
  • Digest
  • Negotiate
  • Basic
  • Kerberos
  • NtlmDomain
  • Credssp

Non è possibile usare 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 del provider di servizi di sicurezza delle credenziali (CredSSP) in cui le credenziali dell'utente vengono passate a un computer remoto da autenticare, è progettato 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.

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

-CertificateThumbprint

Specifica il certificato di chiave pubblica digitale (X.509) di un account utente che dispone dell'autorizzazione per 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 di PowerShell. Per altre informazioni sull'uso del provider di certificati di PowerShell, digitare Get-Help Certificateo vedere Provider di certificati.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

È anche possibile passare un nome computer (in virgolette) a New-CimSession usando la pipeline.

Type:String[]
Aliases:CN, ServerName
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Credential

Specifica un account utente che dispone delle autorizzazioni per eseguire questa azione. Se non viene specificata la credenziale , viene usato l'account utente corrente.

Specificare il valore di Credential usando uno dei formati seguenti:

  • Nome utente: "User01"
  • Nome di dominio e 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.

Type:PSCredential
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 Get-CimSession cmdlet. Il nome non deve essere univoco per il computer o la sessione corrente.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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 minore del timeout di ripetizione dei tentativi 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 viene interrotta prima che il client possa riconnettersi.

Type:UInt32
Aliases:OT
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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 se non 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.

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

-SessionOption

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

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

-SkipTestConnection

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

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

Input

None

Questo cmdlet non accetta input.

Output

CimSession