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 주소로 식별되는 원격 컴퓨터에 세션을 만듭니다. 스크립트는 계정의 사용자 이름과 암호를 제공합니다. WSManFlagCredUserNamePassword 및 WSManFlagUseBasic 플래그가 결합되어 계정이 원격 컴퓨터의 로컬 계정임을 나타냅니다. 세션 생성에 실패하면 스크립트가 종료됩니다. 스크립트는 상수를 반환하는 메서드(예: WSMan.SessionFlagUseBasic)를 사용합니다.
이 스크립트를 실행하려면 암호화되지 않은 트래픽 및 기본 인증을 허용하도록 클라이언트와 서버 모두에 대한 기본 구성 설정을 구성해야 합니다(AllowUnencrypted 가 True 로 설정되고 기본이 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\username
로 computername\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 |
헤더 |
|
IDL |
|
라이브러리 |
|
DLL |
|