Я пишу скрипт, чтобы включить флажок Обеспечить проверку доступа на уровне компонента и установить флажок перед ролью.PowerShell для включения установленного пакета безопасности COM +
Это код, который я до сих пор (изменение названия COM + приложение):
$comAdmin = New-Object -ComObject COMAdmin.COMAdminCatalog
$apps = $comAdmin.GetCollection('Applications')
$apps.Populate()
$targetApp = '<appname>'
$app = $apps | Where-Object -FilterScript {
$_.Name -eq $targetApp
}
$components = $apps.GetCollection('Components',$app.key)
$components.Populate()
foreach ($component in $components)
{
$componentName = $component.Name
$componentID = $component.Value('CLSID')
}
$accesschecks = $component.Value('ComponentAccessChecksEnabled')
$component.Value('ComponentAccessChecksEnabled') = $true
$components.SaveChanges()
$comAdmin = New-Object -ComObject COMAdmin.COMAdminCatalog
$apps = $comAdmin.GetCollection('Applications')
$apps.Populate()
$app = $apps|Where-Object -FilterScript {
$_.Name -eq $targetApp
}
$components = $apps.GetCollection('Components', $app.Key)
$components.Populate()
$components.GetCollection('RolesForComponent', $component.Key)
foreach ($component in $components)
{
$component.Value('ComponentAccessChecksEnabled') = $true
$component.value('RolesForComponentEnabled') = #t
'{0,-30}{2,-10}{1}{1}' -f $component.Name, $component.Value('CLSID'), $component.Value('ComponentAccessChecksEnabled'), $component.Key
}
$components.SaveChanges()
Первая часть сценариев работы, это позволяет флажок. Но вторая часть не проверяет флажок перед ролью. Она теперь выглядит следующим образом:
мне нужно немного помочь, чтобы получить сценарий для работы, чтобы установить флажок. Есть идеи?