policy/avmsec/AKSLoggingEnabled.rego (16 lines of code) (raw):

package avmsec import rego.v1 valid_azurerm_kubernetes_cluster_logging_enabled(_input) if { _input.values.addon_profile[0].oms_agent[0].enabled == true } valid_azurerm_kubernetes_cluster_logging_enabled(_input) if { _input.values.oms_agent[0].log_analytics_workspace_id == _input.values.oms_agent[0].log_analytics_workspace_id } valid_azurerm_kubernetes_cluster_logging_enabled(_input) if { _input.after_unknown.oms_agent[0].log_analytics_workspace_id == _input.after_unknown.oms_agent[0].log_analytics_workspace_id } deny_AVM_SEC_4 contains reason if { resource := data.utils.resource(input, "azurerm_kubernetes_cluster")[_] not valid_azurerm_kubernetes_cluster_logging_enabled(resource) reason := sprintf("avmsec/AVM_SEC_4: Ensure AKS logging to Azure Monitoring is Configured. %s: https://github.com/bridgecrewio/checkov/blob/main/checkov/terraform/checks/resource/azure/AKSLoggingEnabled.py", [resource.address]) }