Get-WSManInstance

리소스 URI로 지정된 리소스 인스턴스에 대한 관리 정보를 표시합니다.

Syntax

Get-WSManInstance
   [-ApplicationName <String>]
   [-ComputerName <String>]
   [-ConnectionURI <Uri>]
   [-Dialect <Uri>]
   [-Fragment <String>]
   [-OptionSet <Hashtable>]
   [-Port <Int32>]
   [-ResourceURI] <Uri>
   [-SelectorSet <Hashtable>]
   [-SessionOption <SessionOption>]
   [-UseSSL]
   [-Credential <PSCredential>]
   [-Authentication <AuthenticationMechanism>]
   [-CertificateThumbprint <String>]
   [<CommonParameters>]
Get-WSManInstance
   [-ApplicationName <String>]
   [-BasePropertiesOnly]
   [-ComputerName <String>]
   [-ConnectionURI <Uri>]
   [-Dialect <Uri>]
   [-Enumerate]
   [-Filter <String>]
   [-OptionSet <Hashtable>]
   [-Port <Int32>]
   [-Associations]
   [-ResourceURI] <Uri>
   [-ReturnType <String>]
   [-SessionOption <SessionOption>]
   [-Shallow]
   [-UseSSL]
   [-Credential <PSCredential>]
   [-Authentication <AuthenticationMechanism>]
   [-CertificateThumbprint <String>]
   [<CommonParameters>]

Description

cmdlet은 Get-WSManInstance 리소스 URI(Uniform Resource Identifier)로 지정된 관리 리소스의 인스턴스를 검색합니다. 검색되는 정보는 복잡한 XML 정보 집합( 개체 또는 단순 값)일 수 있습니다. 이 cmdlet은 WS-Management(관리용 표준 웹 서비스) Get 명령과 동일합니다.

이 cmdlet은 WS-Management 연결/전송 계층을 사용하여 정보를 검색합니다.

예제

예제 1: WMI에서 모든 정보 가져오기

Get-WSManInstance -ResourceURI wmicimv2/win32_service -SelectorSet @{name="winrm"} -ComputerName "Server01"

이 명령은 WMI(Windows Management Instrumentation)에서 원격 server01 컴퓨터의 WinRM 서비스에 대해 노출하는 모든 정보를 반환합니다.

예제 2: Spooler 서비스의 상태 가져오기

Get-WSManInstance -ResourceURI wmicimv2/win32_service -SelectorSet @{name="spooler"} -Fragment Status -ComputerName "Server01"

이 명령은 원격 server01 컴퓨터에서 Spooler 서비스의 상태 반환합니다.

예제 3: 모든 서비스에 대한 엔드포인트 참조 가져오기

Get-WSManInstance -Enumerate -ResourceURI wmicimv2/win32_service -ReturnType EPR

이 명령은 로컬 컴퓨터의 모든 서비스에 해당하는 엔드포인트 참조를 반환합니다.

예제 4: 지정된 조건을 충족하는 서비스 가져오기

Get-WSManInstance -Enumerate -ResourceURI wmicimv2/* -Filter "select * from win32_service where StartMode = 'Auto' and State = 'Stopped'" -ComputerName "Server01"

이 명령은 원격 Server01 컴퓨터에서 다음 조건을 충족하는 모든 서비스를 나열합니다.

  • 서비스의 시작 유형이 자동입니다.
  • 서비스가 중지되었습니다.

예제 5: 로컬 컴퓨터의 조건과 일치하는 수신기 구성 가져오기

Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @{Address="*";Transport="http"}

이 명령은 선택기 집합의 조건과 일치하는 수신기에 대한 로컬 컴퓨터의 WS-Management 수신기 구성을 나열합니다.

예제 6: 원격 컴퓨터의 조건과 일치하는 수신기 구성 가져오기

Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @{Address="*";Transport="http"} -ComputerName "Server01"

이 명령은 선택기 집합의 조건과 일치하는 수신기에 대한 원격 server01 컴퓨터의 WS-Management 수신기 구성을 나열합니다.

예제 7: 지정된 인스턴스와 관련된 연결된 인스턴스 가져오기

Get-WSManInstance -Enumerate -Dialect Association -Filter "{Object=win32_service?name=winrm}" -ResourceURI wmicimv2/*

이 명령은 지정된 인스턴스(winrm)와 관련된 연결된 인스턴스를 가져옵니다.

예제에 표시된 것처럼 필터를 따옴표로 묶어야 합니다.

예제 8: 지정된 인스턴스와 관련된 연결 인스턴스 가져오기

Get-WSManInstance -Enumerate -Dialect Association -Associations -Filter "{Object=win32_service?name=winrm}" -ResourceURI wmicimv2/*

이 명령은 지정된 인스턴스(winrm)와 관련된 연결 인스턴스를 가져옵니다. 언어 값은 연결이고 Associations 매개 변수가 사용되므로 이 명령은 연결된 인스턴스가 아닌 연결 인스턴스를 반환합니다.

예제에 표시된 것처럼 필터를 따옴표로 묶어야 합니다.

매개 변수

-ApplicationName

연결의 애플리케이션 이름을 지정합니다. ApplicationName 매개 변수의 기본값은 WSMAN입니다. 원격 엔드포인트의 전체 식별자는 다음과 같은 형식입니다.

<transport>://<server>:<port>/<ApplicationName>

예: http://server01:8080/WSMAN

세션을 호스트하는 IIS(인터넷 정보 서비스)는 이 엔드포인트가 있는 요청을 지정된 애플리케이션에 전달합니다. WSMAN의 이 기본 설정은 대부분의 용도에 적합합니다. 이 매개 변수는 많은 컴퓨터가 PowerShell을 실행하는 한 컴퓨터에 원격 연결을 설정하는 경우에 사용하도록 설계되었습니다. 이 경우 IIS는 효율성을 위해 WS-Management를 호스트합니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Associations

이 cmdlet은 연결된 인스턴스가 아닌 연결 인스턴스를 가져옵니다. 언어 매개 변수에 연결 값이 있는 경우에만 이 매개 변수를 사용할 수 있습니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

서버에서 사용할 인증 메커니즘을 지정합니다. 이 매개 변수에 허용되는 값은 다음과 같습니다.

  • Basic - 기본은 사용자 이름과 암호가 서버 또는 프록시에 명확한 텍스트로 전송되는 체계입니다.
  • Default - WS-Management 프로토콜에 의해 구현된 인증 방법을 사용합니다. 기본값입니다.
  • Digest - 다이제스트는 챌린지에 서버 지정 데이터 문자열을 사용하는 챌린지-응답 체계입니다.
  • Kerberos - 클라이언트 컴퓨터와 서버는 Kerberos 인증서를 사용하여 상호 인증합니다.
  • Negotiate - 협상은 인증에 사용할 체계를 결정하기 위해 서버 또는 프록시와 협상하는 챌린지 응답 체계입니다. 예를 들어 이 매개 변수 값을 사용하면 협상을 통해 Kerberos 프로토콜 또는 NTLM이 사용되는지 여부를 확인할 수 있습니다.
  • CredSSP - 사용자가 자격 증명을 위임할 수 있는 CredSSP(자격 증명 보안 지원 공급자) 인증을 사용합니다. 이 옵션은 한 원격 컴퓨터에서 실행되지만 다른 원격 컴퓨터에서 데이터를 수집하거나 다른 원격 컴퓨터에서 추가 명령을 실행하는 명령을 위해 설계되었습니다.

주의

CredSSP는 로컬 컴퓨터에서 원격 컴퓨터로 사용자 자격 증명을 위임합니다. 이렇게 하면 원격 작업의 보안 위험이 증가합니다. 원격 컴퓨터가 손상된 경우 자격 증명이 원격 컴퓨터에 전달되면 자격 증명이 네트워크 세션을 제어하는 데 사용될 수 있습니다.

Type:AuthenticationMechanism
Aliases:auth, am
Accepted values:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BasePropertiesOnly

이 cmdlet은 ResourceURI 매개 변수로 지정된 기본 클래스의 일부인 속성만 열거한다는 것을 나타냅니다. Shallow 매개 변수가 지정된 경우에는 이 매개 변수가 적용되지 않습니다.

Type:SwitchParameter
Aliases:UBPO, Base
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

이 작업을 수행할 수 있는 권한이 있는 사용자 계정의 디지털 공개 키 인증서(X509)를 지정합니다. 인증서의 인증서 지문을 입력합니다.

인증서는 클라이언트 인증서 기반 인증에 사용됩니다. 로컬 사용자 계정에만 매핑할 수 있습니다. do기본 계정으로는 작동하지 않습니다.

인증서 지문을 가져오려면 PowerShell 인증서: 드라이브에서 또는 Get-ChildItem 명령을 사용합니다Get-Item.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

관리 작업을 실행할 컴퓨터를 지정합니다. 값은 정규화된 do기본 이름, NetBIOS 이름 또는 IP 주소일 수 있습니다. 로컬 컴퓨터 이름을 사용하거나 localhost를 사용하거나 점(.)을 사용하여 로컬 컴퓨터를 지정합니다. 로컬 컴퓨터가 기본값입니다. 원격 컴퓨터가 사용자와 다른 do기본 있는 경우 정규화된 do기본 이름을 사용해야 합니다. 이 매개 변수의 값을 cmdlet으로 파이프할 수 있습니다.

Type:String
Aliases:CN
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionURI

연결 엔드포인트를 지정합니다. 이 문자열의 형식은 다음과 같습니다.

<Transport>://<Server>:<Port>/<ApplicationName>

다음 문자열은 이 매개 변수에 대해 올바른 형식의 값입니다.

http://Server01:8080/WSMAN

URI는 정규화되어야 합니다.

Type:Uri
Aliases:CURI, CU
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

이 작업을 수행할 권한이 있는 사용자 계정을 지정합니다. 기본값은 현재 사용자입니다. 사용자 이름(예: User01, Do기본01\User01 또는 User@Domain.com.)을 입력합니다. 또는 cmdlet에서 반환한 개체와 같은 PSCredential 개체를 Get-Credential 입력합니다. 사용자 이름을 입력하면 이 cmdlet에서 암호를 묻는 메시지를 표시합니다.

Type:PSCredential
Aliases:cred, c
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Dialect

필터 조건자에서 사용할 방언을 지정합니다. 원격 서비스에서 지원하는 모든 언어일 수 있습니다. 방언 URI에는 다음 별칭을 사용할 수 있습니다.

  • WQL - http://schemas.microsoft.com/wbem/wsman/1/WQL
  • 선택기- http://schemas.microsoft.com/wbem/wsman/1/wsman/SelectorFilter
  • 협회- http://schemas.dmtf.org/wbem/wsman/1/cimbinding/associationFilter
Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Enumerate

이 cmdlet은 관리 리소스의 모든 인스턴스를 반환한다는 것을 나타냅니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Filter

열거를 위한 필터 식을 지정합니다. 이 매개 변수를 지정하는 경우 방언도 지정해야 합니다.

이 매개 변수의 유효한 값은 언어에 지정된 언어에 따라 달라집니다. 예를 들어 Dialect가 WQL인 경우 Filter 매개 변수는 문자열을 포함해야 하며 문자열에는 다음 쿼리와 같은 유효한 WQL 쿼리가 포함되어야 합니다.

"Select * from Win32_Service where State != Running"

언어가 연결인 경우 필터는 문자열을 포함해야 하며 문자열에는 다음 필터와 같은 유효한 필터가 포함되어야 합니다.

-filter:Object=EPR\[;AssociationClassName=AssocClassName\]\[;ResultClassName=ClassName\]\[;Role=RefPropertyName\]\[;ResultRole=RefPropertyName\]}

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Fragment

지정된 작업에 대해 업데이트하거나 검색할 인스턴스 내의 섹션을 지정합니다. 예를 들어 스풀러 서비스의 상태 얻으려면 다음을 지정합니다.

-Fragment Status

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OptionSet

요청의 특성을 수정하거나 구체화하기 위한 서비스로의 스위치 집합을 지정합니다. 이러한 스위치는 서비스 관련이므로 명령줄 셸에서 사용되는 스위치와 유사합니다. 원하는 수의 옵션을 지정할 수 있습니다.

다음 예제에서는 a, b 및 c 매개 변수의 값 1, 2 및 3을 전달하는 구문을 보여 줍니다.

-OptionSet @{a=1;b=2;c=3}

Type:Hashtable
Aliases:OS
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Port

클라이언트가 WinRM 서비스에 연결할 때 사용할 포트를 지정합니다. 전송이 HTTP인 경우 기본 포트는 80입니다. 전송이 HTTPS인 경우 기본 포트는 443입니다.

HTTPS를 전송으로 사용하는 경우 ComputerName 매개 변수 값이 서버의 CN(인증서 일반 이름)과 일치해야 합니다. 그러나 SkipCNCheck 매개 변수가 SessionOption 매개 변수의 일부로 지정된 경우 서버의 인증서 일반 이름은 서버의 호스트 이름과 일치할 필요가 없습니다. SkipCNCheck 매개 변수는 신뢰할 수 있는 컴퓨터에만 사용해야 합니다.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceURI

리소스 클래스 또는 인스턴스의 URI를 지정합니다. URI는 컴퓨터에서 디스크 또는 프로세스와 같은 특정 유형의 리소스를 식별합니다.

URI는 접두사 및 리소스의 경로로 구성됩니다. 예시:

http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk

http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor

Type:Uri
Aliases:RURI
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ReturnType

반환할 데이터 형식을 지정합니다. 이 매개 변수에 허용되는 값은 다음과 같습니다.

  • Object
  • EPR
  • ObjectAndEPR

기본값은 Object입니다.

이 매개 변수를 지정 Object 하거나 지정하지 않으면 이 cmdlet은 개체만 반환합니다. EPR(엔드포인트 참조)을 지정하는 경우 이 cmdlet은 개체의 엔드포인트 참조만 반환합니다. 엔드포인트 참조에는 인스턴스의 리소스 URI 및 선택기에 대한 정보가 포함됩니다. 지정 ObjectAndEPR하는 경우 이 cmdlet은 개체와 연결된 엔드포인트 참조를 모두 반환합니다.

Type:String
Aliases:RT
Accepted values:object, epr, objectandepr
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SelectorSet

특정 관리 리소스 인스턴스를 선택하는 데 사용되는 값 쌍 집합을 지정합니다. SelectorSet 매개 변수는 리소스의 인스턴스가 둘 이상 있을 때 사용됩니다. SelectorSet 매개 변수의 값은 해시 테이블이어야 합니다.

다음 예제에서는 이 매개 변수의 값을 입력하는 방법을 보여줍니다.

-SelectorSet @{Name="WinRM";ID="yyy"}

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SessionOption

WS-Management 세션에 대한 확장 옵션을 지정합니다. New-WSManSessionOption cmdlet을 사용하여 만든 SessionOption 개체를 입력합니다. 사용할 수 있는 옵션에 대한 자세한 내용은 .를 입력합니다 Get-Help New-WSManSessionOption.

Type:SessionOption
Aliases:SO
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Shallow

이 cmdlet은 리소스 URI에 지정된 기본 클래스의 인스턴스만 반환한다는 것을 나타냅니다. 이 매개 변수를 지정하지 않으면 이 cmdlet은 URI 및 모든 파생 클래스에 지정된 기본 클래스의 인스턴스를 반환합니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSSL

SSL(Secure Sockets Layer) 프로토콜을 사용하여 원격 컴퓨터에 대한 연결을 설정하도록 지정합니다. 기본적으로 SSL은 사용되지 않습니다.

WS-Management는 네트워크를 통해 전송되는 모든 Windows PowerShell 내용을 암호화합니다. UseSSL 매개 변수를 사용하면 HTTP 대신 HTTPS의 추가 보호를 지정할 수 있습니다. 연결에 사용되는 포트에서 SSL을 사용할 수 없는 경우 이 매개 변수를 지정하면 명령이 실패합니다.

Type:SwitchParameter
Aliases:SSL
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

입력

None

개체를 이 cmdlet으로 파이프할 수 없습니다.

출력

XmlElement

이 cmdlet은 XMLElement 개체를 반환합니다.