У меня возникли проблемы с назначением одной из встроенных политик с параметром logAnalytics, если задействовано несколько подписок. Мне нужно сделать это с помощью кода. Вот как я пытаюсь этого добиться.
Получите ссылку на определение встроенной политики для назначения
$definition = Get-AzPolicyDefinition | Where-Object { $_.Properties.DisplayName -eq 'Deploy Log Analytics agent for Windows VMs' }
$parameter = @{
logAnalytics = '<resourceId to my logAnalytics workspace>'
}
Создайте назначение политики со встроенным определением для вашей группы ресурсов.
New-AzPolicyAssignment -Name 'Deploy LA Agent Windows VMs' -DisplayName 'Deploy LA Agent Windows VMs' -Scope "/subscriptions/<my subscriptionId" -PolicyDefinition $definition -AssignIdentity -Location 'norwayeast' -PolicyParameterObject $parameter
Этот код работает нормально, если я назначаю политику той же подписке, где расположена рабочая область logAnalytics, но если я ограничиваю назначение политики другой подпиской и затем проверяю назначение на портале, параметр Log Analytics Workspace будет пустым. Субъект-служба, выполняющая эти команды, является владельцем обеих подписок.