BEGIN COMMENT
? Создание объектов GPM и GPMConstants, затем подключение к домену.
END COMMENT
Set GPMC = CreateObject(«GPMgmt.GPM»)
Set Constants = GPMC.GetConstants()
? BEGIN CALLOUT A
A
Set GPMCDomain = GPMC.GetDomain(«mycompany.net», «», Constants.UseAnyDC)
? END CALLOUT A
? BEGIN CALLOUT B
BEGIN COMMENT
B
? Создание объекта для GPO, для которого требуется получить список разрешений.
END COMMENT
Set MyGPO = GPMCDomain.GetGPO(«{31B2F340-016D-11D2-945F-00C04FB984F9}»)
BEGIN COMMENT
? Получить разрешения.
END COMMENT
Set GPOSec = MyGPO.GetSecurityInfo()
? END CALLOUT B
For indx=1 to GPOSec.Count
BEGIN COMMENT
? Назначить ACE переменной Ace.
END COMMENT
Set Ace = GPOSec.Item(indx)
BEGIN COMMENT
C
? Найти имя пользователя или группы для ACE.
END COMMENT
Set UsrorGrp= Ace.Trustee
PrincipalName=UsrorGrp.TrusteeName
? BEGIN CALLOUT C
BEGIN COMMENT
? Определить, какие разрешения имеет пользователь или группа.
END COMMENT
Select Case Ace.Permission
Case Constants.permGPOApply
Perm=»Чтение и применение Group Policy»
Case Constants.permGPOEdit
Perm=»Редактирование Group Policy»
Case Constants.permGPOEditSecurityAndDelete
Perm=»Редактирование Group Policy,
изменение уровня безопасности и удаление Group Policy»
Case Constants.permGPORead
Perm=»Чтение Group Policy»
Case Constants.permGPOCustom
Perm=»Специальные разрешения»
End Select
? END CALLOUT C
WScript.Echo «Пользователь или группа: « & PrincipalName & _
«имеет следующие разрешения: « & Perm
Next