WMI에서 인증 설정
호출 프로세스 외부 또는 원격 WMI 서비스를 호출할 때 WMI는 DCOM(구성 요소 개체 모델)의 분산 버전을 사용합니다. 프로세스 외부 호출 및 원격 호출은 호출 프로세스의 자격 증명을 인증해야 하는 프록시를 통해 수행됩니다.
컴퓨터 및 WMI 네임스페이스에 연결할 때 인증 수준을 설정합니다. WMI에 연결하려면 C++에서 IWbemLocator::ConnectServer 호출합니다. 스크립팅 또는 Visual Basic에서는 SWbemLocator.ConnectServer를 사용하거나 모니커 문자열을 통해 WMI에 연결합니다. DCOM 보안 및 WMI는 둘 다 컴퓨터 간에 연결할 때 특정 인증 수준이 필요합니다. 필요한 수준은 연결하는 운영 체제에 따라 다릅니다. 자세한 내용은 원격 컴퓨터에서 WMI에 연결에 대해 를 참조하세요.
WMI는 일반적으로 공유 서비스 호스트에서 실행되며 호스트의 다른 프로세스와 동일한 인증을 공유합니다. 다른 수준의 인증으로 WMI 프로세스를 실행하려면 /standalonehost 스위치를 사용하여 winmgmt 명령을 사용하여 WMI를 실행하고 일반적으로 WMI에 대한 인증 수준을 설정합니다. 자세한 내용은 WMI 보안 유지 관리 에 대한 정보를 참조하세요.
WMI 연결에 대한 인증을 설정하는 방법에 대한 자세한 내용 및 코드 예제는 VBScript 사용하여 인증 서비스 설정 및 C++ 사용하여 인증 설정참조하세요. 이러한 항목에는 C++ 및 스크립팅에 대한 인증 상수가 나열된 테이블도 포함되어 있습니다.
WMI에서 프록시 사용
프록시에 대한 인증을 설정하려면 CoSetProxyBlanket 함수를 호출합니다. 자세한 내용 및 코드 예제는 IWbemServices 및 기타 프록시보안 설정을 참조하세요.
다음 WMI 개체에 대한 COM API는 C++ 또는 C#에서 직접 프록시를 사용하여 프로세스를 호출하거나 원격 WMI 서비스를 호출합니다.
- IWbemServices
- IEnumWbemClassObject
- IWbemCallResult
- IWbemRefresher
SWbemObject, SWbemServices및 SWbemRefresher 같은 스크립팅 개체는 프록시를 직접 사용하지 않습니다. 대신 스크립팅 개체는 위에 나열된 WMI 개체에 대한 COM API를 호출하는 래퍼 또는 계층을 나타냅니다. 자세한 내용 및 스크립팅에서 인증을 설정하는 코드 예제는 VBScript사용하여 기본 프로세스 보안 수준 설정을 참조하세요.