WSMan.CreateSession-Methode

Erstellt ein Session-Objekt , das dann für nachfolgende Netzwerkvorgänge verwendet werden kann.

Syntax

WSMan.CreateSession( _
  [ ByVal connection ], _
  [ ByVal flags ], _
  [ ByVal connectionOptions ] _
)

Parameter

Verbindung [in, optional]

Das Protokoll und der Dienst, mit dem eine Verbindung hergestellt werden soll, einschließlich IPv4 oder IPv6. Das Format der Verbindungsinformationen lautet wie folgt: <Transportadresssuffix><><>. Beispiele finden Sie unter Hinweise. Wenn keine Verbindungsinformationen angegeben werden, wird der lokale Computer verwendet.

Flags [in, optional]

Die Sitzungsflags, die die Authentifizierungsmethode angeben, z. B . Die Aushandlungsauthentifizierung oder die Digestauthentifizierung, um eine Verbindung mit einem Remotecomputer herzustellen. Diese Flags geben auch andere Sitzungsverbindungsinformationen an, z. B. Codierung oder Verschlüsselung. Dieser Parameter muss mindestens ein Flag in __WSManSessionFlags für eine Remoteverbindung enthalten. Weitere Informationen finden Sie unter Sitzungskonstanten. Für eine Verbindung mit WinRM auf dem lokalen Computer sind keine Flageinstellungen erforderlich. Der Standardwert ist WSManFlagUseNegotiate.

Weitere Informationen finden Sie unter Authentifizierung für Remoteverbindungen und unter connectionOptions-Parameter .

connectionOptions [in, optional]

Ein Zeiger auf ein ConnectionOptions-Objekt , das einen Benutzernamen und ein Kennwort enthält. Der Standardwert ist NULL.

Rückgabewert

Ein Session-Objekt , das dann zum Ausführen lokaler oder Remote-WinRM-Vorgänge verwendet werden kann.

Bemerkungen

Die CreateSession-Methode initialisiert das Session-Objekt , indem Parameter wie Flags, Anmeldeinformationen und eine Verbindungszeichenfolge für den Verbindungsparameter erfasst werden. CreateSession stellt keine Verbindung mit dem lokalen oder Remotecomputer her. Wenn die Verbindung nicht hergestellt werden kann, tritt nach dem Aufruf von CreateSession ein Fehler beim ersten Sitzungsvorgang auf, z. B. get oderEnumerate. Dieses Verhalten unterscheidet sich von einer WMI-Verbindung zu einem Namespace auf einem Remotecomputer. Weitere Informationen finden Sie unter Windows-Remoteverwaltung und WMI.

Das folgende VBScript-Codebeispiel wird verwendet, um diese Methode aufzurufen.

Set session = _
    wsman.CreateSession("<Transport><Address><Suffix>")

Die folgenden Beispiele zeigen die verschiedenen Formate, die zum Angeben von Verbindungsinformationen im Verbindungsparameter verwendet werden (beim Erstellen einer HTTPS-Sitzung muss das <Feld Adresse> mit dem Namen des Servercomputerzertifikats übereinstimmen, andernfalls tritt ein Fehler auf):

  • "https://service"

    Verwendet HTTPS, um eine Verbindung mit dem Standardspeicherort des Webdiensts herzustellen.

  • "https://service.corp.com/websvcs/wsman"

    Verwendet HTTPS, um eine Verbindung mit dem jeweiligen Webdienststandort herzustellen.

  • "https://[E3D7:0000:0000:0000:51F4:9BC8:C0A8:6420]"

    Verwendet HTTPS und IPv6 mit dem Standardport.

  • "https://[E3D7:0000:0000:0000:51F4:9BC8:C0A8:6420]:9999/wsman"

    Verwendet HTTPS und IPv6 mit dem angegebenen Port.

Beispiele

Im folgenden VBScript-Codebeispiel wird eine Sitzung auf dem lokalen Computer erstellt.

 Set NewSession = Wsman.CreateSession   
   

Im folgenden VBScript-Codebeispiel wird eine Sitzung auf einem Remotecomputer erstellt, die durch eine IP-Adresse identifiziert wird. Das Skript stellt einen Benutzernamen und ein Kennwort für ein Konto bereit. Die Flags WSManFlagCredUserNamePassword und WSManFlagUseBasic werden kombiniert, um anzugeben, dass es sich bei dem Konto um ein lokales Konto auf dem Remotecomputer handelt. Wenn die Erstellung der Sitzung fehlschlägt, wird das Skript beendet. Das Skript verwendet die Methoden, die die Konstante zurückgeben, z . B. WSMan.SessionFlagUseBasic.

Beachten Sie zum Ausführen dieses Skripts, dass Sie die Standardkonfigurationseinstellungen für Client und Server konfigurieren müssen, um unverschlüsselten Datenverkehr und die Standardauthentifizierung zuzulassen (AllowUnencrypted auf True und Basic auf True festgelegt). Weitere Informationen finden Sie unter Installation und Konfiguration für die Windows-Remoteverwaltung.

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) 

Im folgenden VBScript-Codebeispiel ist das Konto ein Domänenkonto, und die Negotiate-Authentifizierung wird verwendet. Bei der Negotiate-Authentifizierung müssen Sie den Benutzernamen als computername\username oder ipaddress\usernameangeben.

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) 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista
Unterstützte Mindestversion (Server)
WindowsServer 2008
Header
WSManDisp.h
IDL
WSManDisp.idl
Bibliothek
WSManDisp.tlb
DLL
WSMAuto.dll

Weitere Informationen

Wsman

Connectionoptions

Sitzung

Authentifizierung für Remoteverbindungen

Installation und Konfiguration für die Windows-Remoteverwaltung