Metodo WSMan.CreateSession
Crea un oggetto Session che può quindi essere utilizzato per le operazioni di rete successive.
Sintassi
WSMan.CreateSession( _
[ ByVal connection ], _
[ ByVal flags ], _
[ ByVal connectionOptions ] _
)
Parametri
-
connessione [in, facoltativo]
-
Protocollo e servizio a cui connettersi, inclusi IPv4 o IPv6. Il formato delle informazioni di connessione è il seguente: <Suffisso>indirizzo><trasporto><. Per esempi, vedere Osservazioni. Se non vengono fornite informazioni di connessione, viene utilizzato il computer locale.
-
flag [in, facoltativo]
-
Flag di sessione che specificano il metodo di autenticazione, ad esempio l'autenticazione Negotiate o Digest, per la connessione a un computer remoto. Questi flag specificano anche altre informazioni di connessione di sessione, ad esempio la codifica o la crittografia. Questo parametro deve contenere uno o più flag in __WSManSessionFlags per una connessione remota. Per altre informazioni, vedere Costanti di sessione. Non sono necessarie impostazioni di flag per una connessione a WinRM nel computer locale. Il valore predefinito è WSManFlagUseNegotiate.
Per altre informazioni, vedere Autenticazione per connessioni remote e il parametro connectionOptions .
-
connectionOptions [in, facoltativo]
-
Puntatore a un oggetto ConnectionOptions che contiene un nome utente e una password. Il valore predefinito è NULL.
Valore restituito
Oggetto Session che può quindi essere utilizzato per eseguire operazioni WinRM locali o remote.
Commenti
Il metodo CreateSession inizializza l'oggetto Session raccogliendo parametri, ad esempio flag, credenziali e una stringa di connessione per il parametro di connessione . CreateSession non si connette effettivamente al computer locale o remoto. Se non è possibile stabilire la connessione, si verifica un errore nella prima operazione di sessione , ad esempio get o enumerata, dopo la chiamata a CreateSession. Questo comportamento è diverso da una connessione WMI a uno spazio dei nomi in un computer remoto. Per altre informazioni, vedere Gestione remota Windows e WMI.
Per chiamare questo metodo viene usato l'esempio di codice VBScript seguente.
Set session = _
wsman.CreateSession("<Transport><Address><Suffix>")
Gli esempi seguenti illustrano i diversi formati usati per specificare le informazioni di connessione nel parametro di connessione (quando si crea una sessione HTTPS, il < campo Indirizzo> deve corrispondere al nome del certificato del computer server; in caso contrario, si verifica un errore):
"https://service"
Usa HTTPS per connettersi al percorso predefinito del servizio Web.
"https://service.corp.com/websvcs/wsman"
Usa HTTPS per connettersi al percorso specifico del servizio Web.
"https://[E3D7:0000:0000:0000:51F4:9BC8:C0A8:6420]"
Usa HTTPS e IPv6 con la porta predefinita.
"https://[E3D7:0000:0000:0000:51F4:9BC8:C0A8:6420]:9999/wsman"
Usa HTTPS e IPv6 con la porta specificata.
Esempio
Nell'esempio di codice VBScript seguente viene creata una sessione nel computer locale.
Set NewSession = Wsman.CreateSession
Nell'esempio di codice VBScript seguente viene creata una sessione in un computer remoto identificato da un indirizzo IP. Lo script fornisce un nome utente e una password per un account. I flag WSManFlagCredUserNamePassword e WSManFlagUseBasic vengono combinati per indicare che l'account è un account locale nel computer remoto. Se la creazione della sessione ha esito negativo, lo script termina. Lo script usa i metodi che restituiscono la costante, ad esempio WSMan.SessionFlagUseBasic.
Per eseguire questo script, tenere presente che è necessario configurare le impostazioni di configurazione predefinite per client e server per consentire il traffico non crittografato e l'autenticazione di base (AllowUnencrypted impostato su True e Basic impostato su True). Per altre informazioni, vedere Installazione e configurazione per Gestione remota Windows.
iFlags = WSMan.SessionFlagUseBasic Or WSMan.SessionFlagCredUsernamePassword
Set Options = Wsman.CreateConnectionOptions
Options.Username = "MyUserName"
Options.Password = "MyPassword"
Set NewSession = WSMan.CreateSession("127.0.51.1", iFlags, _
Options)
Nell'esempio di codice VBScript seguente l'account è un account di dominio e viene usata l'autenticazione Negotiate. Con l'autenticazione Negotiate è necessario specificare il nome utente come computername\username
o ipaddress\username
.
iFlags = WSMan.SessionFlagUseNegotiate Or WSMan.SessionFlagCredUsernamePassword
Set Options = Wsman.CreateConnectionOptions
Options.Username = "MyComputer\MyUserName"
Options.Password = "MyPassword"
Set NewSession = WSMan.CreateSession("127.0.51.1", iFlags, _
Options)
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista |
Server minimo supportato |
Windows Server 2008 |
Intestazione |
|
IDL |
|
Libreria |
|
DLL |
|