다음을 통해 공유


WSMan.CreateSession 메서드

그런 다음 후속 네트워크 작업에 사용할 수 있는 Session 개체를 만듭니다.

구문

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

매개 변수

연결 [in, optional]

IPv4 또는 IPv6을 포함하여 연결할 프로토콜 및 서비스입니다. 연결 정보의 형식은 다음과 같습니다. <전송><주소><접미사>입니다. 예제는 비고를 참조하세요. 연결 정보가 제공되지 않으면 로컬 컴퓨터가 사용됩니다.

flags [in, optional]

원격 컴퓨터에 연결하기 위해 인증 협상 또는 다이제스트 인증과 같은 인증 방법을 지정하는 세션 플래그입니다. 이러한 플래그는 인코딩 또는 암호화와 같은 다른 세션 연결 정보도 지정합니다. 이 매개 변수는 원격 연결을 위해 __WSManSessionFlags 하나 이상의 플래그를 포함해야 합니다. 자세한 내용은 세션 상수를 참조하세요. 로컬 컴퓨터에서 WinRM에 연결하는 데 플래그 설정이 필요하지 않습니다. 기본값은 WSManFlagUseNegotiate입니다.

자세한 내용은 원격 연결 인증 및connectionOptions 매개 변수를 참조하세요.

connectionOptions [in, optional]

사용자 이름과 암호를 포함하는 ConnectionOptions 개체에 대한 포인터입니다. 기본값은 NULL입니다.

반환 값

그런 다음 로컬 또는 원격 WinRM 작업을 수행하는 데 사용할 수 있는 Session 개체입니다.

설명

CreateSession 메서드는 연결 매개 변수에 대한 플래그, 자격 증명 및 연결 문자열과 같은 매개 변수를 수집하여 Session 개체를 초기화합니다. CreateSession 은 실제로 로컬 또는 원격 컴퓨터에 연결되지 않습니다. 연결을 설정할 수 없는 경우 CreateSession 호출 후 Get 또는 Enumerate와 같은 첫 번째 세션 작업에서 오류가 발생합니다. 이 동작은 원격 컴퓨터의 네임스페이스에 대한 WMI 연결과 다릅니다. 자세한 내용은 Windows 원격 관리 및 WMI를 참조하세요.

다음 VBScript 코드 예제는 이 메서드를 호출하는 데 사용됩니다.

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

다음 예제에서는 연결 매개 변수에서 연결 정보를 지정하는 데 사용되는 다양한 형식을 보여 줍니다(HTTPS 세션을 < 만들 때 주소> 필드는 서버 컴퓨터 인증서 이름과 일치해야 합니다. 그렇지 않으면 오류가 발생).

  • "https://service"

    HTTPS를 사용하여 기본 웹 서비스 위치에 연결합니다.

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

    HTTPS를 사용하여 특정 웹 서비스 위치에 연결합니다.

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

    기본 포트와 함께 HTTPS 및 IPv6을 사용합니다.

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

    지정된 포트와 함께 HTTPS 및 IPv6을 사용합니다.

예제

다음 VBScript 코드 예제에서는 로컬 컴퓨터에 세션을 만듭니다.

 Set NewSession = Wsman.CreateSession   
   

다음 VBScript 코드 예제에서는 IP 주소로 식별되는 원격 컴퓨터에 세션을 만듭니다. 스크립트는 계정의 사용자 이름과 암호를 제공합니다. WSManFlagCredUserNamePasswordWSManFlagUseBasic 플래그가 결합되어 계정이 원격 컴퓨터의 로컬 계정임을 나타냅니다. 세션 생성에 실패하면 스크립트가 종료됩니다. 스크립트는 상수를 반환하는 메서드(예: WSMan.SessionFlagUseBasic)를 사용합니다.

이 스크립트를 실행하려면 암호화되지 않은 트래픽 및 기본 인증을 허용하도록 클라이언트와 서버 모두에 대한 기본 구성 설정을 구성해야 합니다(AllowUnencryptedTrue 로 설정되고 기본이 True로 설정됨). 자세한 내용은 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) 

다음 VBScript 코드 예제에서 계정은 도메인 계정이며 인증 협상이 사용됩니다. 협상 인증에서는 사용자 이름을 또는 ipaddress\usernamecomputername\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) 

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows Vista
지원되는 최소 서버
Windows Server 2008
헤더
WSManDisp.h
IDL
WSManDisp.idl
라이브러리
WSManDisp.tlb
DLL
WSMAuto.dll

추가 정보

Wsman

ConnectionOptions

세션

원격 연결에 대한 인증

Windows 원격 관리를 위한 설치 및 구성