Delen via


Methode WSMan.CreateSession

Hiermee maakt u een sessieobject dat vervolgens kan worden gebruikt voor volgende netwerkbewerkingen.

Syntaxis

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

Parameterwaarden

verbinding [in, optioneel]

Het protocol en de service waarmee verbinding moet worden gemaakt, waaronder IPv4 of IPv6. De indeling van de verbindingsgegevens is als volgt: <Achtervoegsel>transportadres><><. Zie Opmerkingen voor voorbeelden. Als er geen verbindingsgegevens worden opgegeven, wordt de lokale computer gebruikt.

vlaggen [in, optioneel]

De sessievlagken waarmee de verificatiemethode wordt opgegeven, zoals Negotiate Authentication of Digest-verificatie, voor het maken van verbinding met een externe computer. Deze vlaggen geven ook andere sessieverbindingsgegevens op, zoals codering of versleuteling. Deze parameter moet een of meer vlaggen bevatten in __WSManSessionFlags voor een externe verbinding. Zie Sessieconstantenvoor meer informatie. Er zijn geen vlaginstellingen vereist voor een verbinding met WinRM op de lokale computer. De standaardwaarde is WSManFlagUseNegotiate.

Zie Verificatie voor externe verbindingen en de parameter connectionOptions voor meer informatie.

connectionOptions [in, optioneel]

Een aanwijzer naar een ConnectionOptions-object dat een gebruikersnaam en wachtwoord bevat. De standaardwaarde is NULL.

Retourwaarde

Een sessieobject dat vervolgens kan worden gebruikt om lokale of externe WinRM-bewerkingen uit te voeren.

Opmerkingen

Met de methode CreateSession wordt het sessieobject geïnitialiseerd door parameters te verzamelen, zoals vlaggen, referenties en een verbindingsreeks voor de verbindingsparameter . CreateSession maakt geen verbinding met de lokale of externe computer. Als de verbinding niet tot stand kan worden gebracht, treedt er een fout op bij de eerste sessiebewerking , zoals een Get of Enumerate, na de aanroep naar CreateSession. Dit gedrag verschilt van een WMI-verbinding met een naamruimte op een externe computer. Zie Windows Remote Management en WMIvoor meer informatie.

Het volgende VBScript-codevoorbeeld wordt gebruikt om deze methode aan te roepen.

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

In de volgende voorbeelden ziet u de verschillende indelingen die worden gebruikt om verbindingsgegevens op te geven in de verbindingsparameter (bij het maken van een HTTPS-sessie moet het < veld Adres> overeenkomen met de naam van het servercomputercertificaat, anders treedt er een fout op):

  • "https://service"

    Gebruikt HTTPS om verbinding te maken met de standaardlocatie van de webservice.

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

    Gebruikt HTTPS om verbinding te maken met de specifieke webservicelocatie.

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

    Gebruikt HTTPS en IPv6 met de standaardpoort.

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

    Gebruikt HTTPS en IPv6 met de opgegeven poort.

Voorbeelden

In het volgende VBScript-codevoorbeeld wordt een sessie op de lokale computer gemaakt.

 Set NewSession = Wsman.CreateSession   
   

In het volgende VBScript-codevoorbeeld wordt een sessie gemaakt op een externe computer die wordt geïdentificeerd door een IP-adres. Het script levert een gebruikersnaam en wachtwoord voor een account. De vlaggen WSManFlagCredUserNamePassword en WSManFlagUseBasic worden gecombineerd om aan te geven dat het account een lokaal account op de externe computer is. Als het maken van de sessie mislukt, wordt het script beëindigd. Het script gebruikt de methoden die de constante retourneren, zoals WSMan.SessionFlagUseBasic.

Als u dit script wilt uitvoeren, moet u de standaardconfiguratie-instellingen configureren voor zowel client als server om niet-versleuteld verkeer en basisverificatie toe te staan (AllowUnencrypted ingesteld op True en Basic ingesteld op True). Zie Installatie en configuratie voor Windows Remote Managementvoor meer informatie.

iFlags = WSMan.SessionFlagUseBasic Or WSMan.SessionFlagCredUsernamePassword
Set Options = Wsman.CreateConnectionOptions
Options.Username = "<username>"
Options.Password = "<password>"
Set NewSession = WSMan.CreateSession("127.0.51.1", iFlags, _
    Options) 

In het volgende VOORBEELD van VBScript-code is het account een domeinaccount en wordt onderhandelen over verificatie gebruikt. Met negotiate-verificatie moet u de gebruikersnaam opgeven als computername\username of ipaddress\username.

iFlags = WSMan.SessionFlagUseNegotiate Or WSMan.SessionFlagCredUsernamePassword
Set Options = Wsman.CreateConnectionOptions
Options.Username = "MyComputer\<username>"
Options.Password = "<password>"
Set NewSession = WSMan.CreateSession("127.0.51.1", iFlags, _
    Options) 

Behoeften

Voorwaarde Waarde
Minimaal ondersteunde client
Windows Vista
Minimaal ondersteunde server
Windows Server 2008
Koptekst
WSManDisp.h
IDL
WSManDisp.idl
Bibliotheek
WSManDisp.tlb
DLL
WSMAuto.dll

Zie ook

WSMan

ConnectionOptions

Sessie

verificatie voor externe verbindingen

installatie en configuratie voor Windows Remote Management