
최근에 상사의 프록시 설정이 자동으로 적용되는 것을 막을 수 있는지 질문을 받았습니다. 우리의 프록시 설정은 그룹 정책에 의해 설정되므로 어떤 GPO인지 쉽게 확인하고 이를 적용하기 위해 GPO 범위가 사용하는 그룹에서 해당 프록시를 제거하기만 하면 된다고 생각했습니다.
우리 그룹 정책은 다양한 사용자와 컴퓨터에 적용되는 다양한 GPO로 인해 매우 복잡합니다.
그렇다면 문제는 각각의 설정을 거치지 않고 설정이 적용되는 GPO를 어떻게 찾고 해당 설정이 해당 사용자/컴퓨터 계정에 적용되는지 확인할 수 있느냐는 것입니다.
만약을 대비해 그의 사용자 계정과 컴퓨터 모두에 대해 그룹 정책 모델링 마법사를 실행했지만 그 사람과 관련된 어떤 것도 찾을 수 없습니다. 프록시 설정과 관련된 유일한 GPO는 해당 계정이 없는 사용자 OU에 있습니다. 즉, GPO는 Domain Users\Users에 적용되고 해당 계정은 Domain Users\IT에 있습니다.
어떤 아이디어가 있나요? 해당 계정에 어떤 설정이 지정되어 있는지 더 잘 알 수 있는 도구가 있나요? powershell을 통해 조사할 수 있나요?
답변1
대상 컴퓨터에서 실행하여 gpresult /h c:\temp\policy.htm
결과 정책을 얻을 수 있습니다. 다음을 사용하여 원격으로 실행할 수도 있습니다.psexec(cmd 명령 사용) 또는파워셸.
또 다른 옵션은 실행하는 것입니다RSOP.msc대상 컴퓨터에서.
참고: 해당 사용자의 계정에 적용된 정책을 수집하려면 영향을 받는 사용자에서 gpresult와 rsop를 모두 수행해야 합니다.
Powershell에서는 다음 중 하나의 커맨드렛을 사용해야 합니다.Get-GPResultantSetOfPolicy매개변수 포함 -컴퓨터그리고-사용자
Get-GPResultantSetOfPolicy -user someuser -computer contoso.com\computer-08 -reporttype html -path c:\reports\UserAndComputerReport.html
참고: Get-GPResultantSetOfPolicy cmdlet을 실행하려면 높은 권한으로 Windows PowerShell을 시작해야 합니다.
또는 COM 개체를 활용하여 다음 Powershell 코드를 사용하십시오.
$OutputFile = “C:\Temp\GPOExport.html”
$ComputerName = “test.contoso.com”
$UserName = “john”
$gpm = New-Object -ComObject GPMgmt.GPM
$constants = $gpm.GetConstants()
$gpmRSOP = $GPM.GetRSOP($Constants.RSOPModeLogging,$null,0)
$gpmRSOP.LoggingComputer = $ComputerName
$gpmRSOP.LoggingUser = $UserName
$gpmRSOP.CreateQueryResults()
$gpmRSOP.GenerateReportToFile($constants.ReportHTML,$outputfile)