2011-11-21 5 views
1

시스템 Win32_OperatingSystem 및 Win32_ComputerSystem 클래스를 쿼리하기 위해 Win2k3 SP2 서버를 WMI를 통해 여러 Win2k3 + SP2 & WinXP + SP3 컴퓨터에 연결하기 위해 VBScript를 작성했습니다.WMI GetObject 권한 거부 오류

Set loWMISvc = GetObject("winmgmts:{impersonationLevel=impersonate,authenticationLevel=Pkt}\\" & lsStore & "\root\cimv2") 

Note: 'lsStore' is the IP address of the computer system I successfully connection too prior. 

이 권한 거부 오류 (스크립트의 출력) 반환 유지 어디는 원격 시스템에 새 개체를 만들려고 : ImpersonationLevel 및 AuthenticationLevel 객체 설정에도 불구하고

21/11/2011 1:17:50 PM  SUCCESS: Established connection to store 
D:\Program Files\SUREfire Systems\Support\MG\QueryStores\QueryStores.vbs(244, 5) Microsoft VBScriptruntime error: Permission denied: 'GetObject' 

이 예기치 않게 표시되면 WMI도 클라이언트 및 원격 시스템에 올바르게 설치되어 나타납니다. 원격 시스템에 대한 초기 연결은 로컬 관리자 사용자를위한 것입니다.

그 밖의 원인으로 인해 내가 볼 수없는 오류가 거부되었습니다. 어떤 도움을 주시면 감사하겠습니다.

답변

0

나는 내 자신의 쿼리를 해결했다고 생각합니다. '권한 거부'오류는 UAC와 관련되므로 원격 시스템 당 동일한 수준의 액세스 및 권한을 사용하여 스크립트를 실행해야합니다. 클라이언트 시스템에서 admin 사용자 계정으로 실행하고 GetObject가 성공한 DOS 명령 프롬프트를 실행했습니다.

admin 계정이 두 시스템에서 동일하게 표시 되더라도 동일한 수준의 액세스와 보안을 유지해야한다는 것을 증명합니다.