Skip to main content

Azure

Overview

Visualize and analyze Azure resources, including virtual machines, storage accounts, networks, databases, MySQL Flexible Servers, MariaDB servers, Azure Data Explorer (Kusto) clusters, and Purview accounts. Monitor resource visibility, governance, and security posture. Enforce security policies, manage configurations, track resource usage, and ensure compliance with organizational standards. Detect vulnerabilities and optimize performance to enhance the security and efficiency of Azure services.

Setup Guide

This guide walks you through setting up the Azure blueprint using ARM (Azure Resource Manager) templates. The setup involves deploying subscription-level resources, configuring Entra ID permissions, and deploying resource-level components.

Prerequisites

  • An Azure subscription where you have Owner or User Access Administrator (or a custom role with permission to create role assignments) at the target subscription scope and any target management group scopes. Elevated access to the root management group/tenant may be required to create management-group/tenant-scope role assignments.
  • Access to Microsoft Entra ID (Azure Active Directory) with sufficient directory permissions (for example, Global Administrator or Privileged Role Administrator) to assign the Cloud Application Administrator role to the managed identity.
  • Access to the Azure Portal

Step 1: Deploy Subscription-Level Resources

This ARM template creates the foundational infrastructure required for Kscope:

  • Resource Group for Kscope resources (default: kaleidoscope-blueprint-rg)
  • User-Assigned Managed Identity used by the deployment scripts (default: kaleidoscope-deployment-identity)
  • Role Assignments:
    • User Access Administrator at subscription scope
    • Management Group Reader at tenant scope
    • User Access Administrator at management group scope

Deployment Steps:

  1. Click the link below to open the ARM template deployment in the Azure Portal:

    Deploy Subscription-Level Resources

  2. Fill in the deployment parameters:

    ParameterDefault ValueDescription
    Resource Group Namekaleidoscope-blueprint-rgName of the resource group to create (must be unique within the subscription)
    Resource Group LocationeastusAzure region for the resource group
    User Assigned Identity Namekaleidoscope-deployment-identityName of the managed identity (must be unique within the resource group)
    Skip Role AssignmentfalseSee note below

    [!ATTENTION] Set Skip Role Assignment to:

    • false for first-time deployments — this creates the necessary role assignments
    • true for subsequent deployments — prevents "role assignment already exists" errors when re-running the template
  3. Click Review + Create, then Create to deploy.

  4. Once deployment completes, navigate to the Outputs tab and save the following values:

    • resourceGroupName — Resource group for Step 3 deployment
    • managedIdentityName — Required for Step 2 and Step 3
    • managedIdentityPrincipalId — Principal ID to assign Entra ID role
    • managedIdentityResourceId — Resource ID for the second ARM template

Step 2: Assign Cloud Application Administrator Role

The managed identity created in Step 1 needs the Cloud Application Administrator Entra ID role to create app registrations, configure API permissions, and grant admin consent.

[!NOTE] This is an Entra ID directory role, not an Azure RBAC role. It must be assigned in the Entra ID admin center.

Assignment Steps:

  1. Open the Entra ID Roles and Administrators page:

    Open Roles and Administrators

  2. Search for and click on Cloud Application Administrator in the roles list.

  3. Click + Add assignments to open the Add role assignment panel.

  4. In the Select members search field, enter the managed identity name from Step 1 output (e.g., kaleidoscope-deployment-identity).

  5. Select the managed identity from the search results and click Select.

  6. Click Next, then click Assign to complete the role assignment.

[!ATTENTION] Role assignment propagation can take 15-30 minutes. Wait for propagation to complete before proceeding to Step 3.

Step 3: Deploy Resource-Level Components

This ARM template deploys the application infrastructure and configures Azure AD integration:

Resources Created:

  • Storage Account with TLS 1.2 enforcement (default: k6scopemystorageaccount)
  • Blob Container for activity logs (default: kaleidoscopeactivitylogscontainer)
  • Storage Queue for event processing (default: kaleidoscopeactivitylogsqueue)
  • Azure AD App Registration with service principal (default: kaleidoscope-blueprint)

Automatic Configuration:

  • Microsoft Graph API permissions (User.Read.All, Group.Read.All, RoleManagement.Read.All)
  • Reader role assignment at subscription scope
  • Contributor role assignment at subscription scope (for ARM template deployments)
  • Management Group Reader role assignment
  • AcrPull role assignment on all existing ACR registries
  • Client secret generation

Deployment Steps:

  1. Click the link below to open the ARM template deployment:

    Deploy Resource-Level Components

  2. Fill in the deployment parameters:

    ParameterDefault ValueDescription
    Managed Identity Namekaleidoscope-deployment-identityUse the managedIdentityName value from Step 1 output
    Storage Account Nameexample: mystorageacct123456Globally unique storage account name. Choose a lowercase name (3–24 characters, letters and numbers only) that meets Azure Storage naming requirements.
    Storage Container NamekaleidoscopeactivitylogscontainerBlob container name (unique within storage account)
    Storage Queue NamekaleidoscopeactivitylogsqueueStorage queue name (unique within storage account)
    Application Display Namekaleidoscope-blueprintAzure AD app registration name (should be unique within tenant for clarity)
  3. Select the Resource Group from Step 1 output (resourceGroupName, e.g., kaleidoscope-blueprint-rg).

  4. Click Review + Create, then Create to deploy.

  5. Once deployment completes, navigate to the Outputs tab and save the following values for Kscope blueprint configuration:

    OutputDescription
    clientIdAzure AD Application (Client) ID
    clientSecretClient secret for authentication
    tenantIdAzure AD Tenant ID
    subscriptionIdAzure Subscription ID
    storageAccountNameStorage account name
    storageAccountKeyStorage account access key
    storageQueueNameQueue name for events
    consentStatusAdmin consent status (see Step 4)

Check the consentStatus output from Step 3:

  • Granted — Admin consent was automatically granted. Skip to configuring your blueprint.
  • PendingManualAction — Manual consent is required. Follow the steps below.

Manual Consent Steps:

  1. Navigate to Microsoft Entra IDApp registrations in the Azure Portal.

  2. Find and select the app registration created by the ARM template (e.g., kaleidoscope-blueprint).

  3. Click API permissions in the left navigation.

  4. Review the configured permissions:

    • User.Read.All (Application)
    • Group.Read.All (Application)
    • RoleManagement.Read.All (Application)
  5. Click Grant admin consent for [Your Tenant] at the top of the permissions list.

  6. Confirm by clicking Yes in the dialog.

[!NOTE] Admin consent grants the application permissions to access Microsoft Graph APIs on behalf of the organization. This is required for Active Directory user, group, and role crawling capabilities.

Configurations

After completing the setup steps above, configure your Azure blueprint in Kscope using the values from the ARM template outputs.

ConfigurationDescriptionARM Output
Blueprint Account NameA human-readable name for your account that will be used to identify this account across the application.
Azure Client IDThe Application (Client) ID of the Azure AD app registration.clientId
Azure Client SecretThe client secret generated for the Azure AD app registration.clientSecret
Azure Tenant IDThe Azure Active Directory tenant ID.tenantId
Azure Subscription IDThe Azure subscription ID being monitored.subscriptionId
Storage Account NameName of the Azure Storage Account for event processing.storageAccountName
Storage Queue NameName of the Azure Storage Queue for event notifications.storageQueueName
Storage Account KeyAccess key for the Azure Storage Account.storageAccountKey
Data Crawl FrequencyThe frequency at which Kscope will crawl the account for resources.
Resource SelectionSelectively include or exclude certain resources.

Permissions

The ARM templates automatically configure the required permissions for the Azure blueprint. The following roles are assigned during deployment:

Azure RBAC Roles (Automatically Assigned)

RoleScopePurpose
ReaderSubscriptionRead-only access to all Azure resources for comprehensive resource crawling
ContributorSubscriptionRequired for ARM template deployments and remediation actions
Management Group ReaderTenant (Root Management Group)Read access to management group hierarchy
AcrPullAll existing ACR registriesPull access for container image crawling and SBOM generation

Microsoft Graph API Permissions (Automatically Configured)

These permissions are configured on the App Registration's API permissions and enable Active Directory crawling:

PermissionTypePurpose
User.Read.AllApplicationRead all users in the directory
Group.Read.AllApplicationRead all groups in the directory
RoleManagement.Read.AllApplicationRead role definitions and assignments

[!NOTE] Admin consent is required for these permissions. The ARM template attempts to grant consent automatically. If consentStatus shows PendingManualAction, follow Step 4 in the Setup Guide.

Additional Considerations

Container Registry

The AcrPull role is required for container registry crawling. The ARM template automatically assigns AcrPull to all ACR registries existing at deployment time.

[!NOTE] ACR registries created after deployment will not have AcrPull assigned automatically. For new registries, either re-run the resource ARM template or manually assign the AcrPull role. Subscription-level AcrPull assignment is recommended to cover all registries automatically.

For further documentation on Azure permissions, refer to the: Azure Role-Based Access Control (RBAC) documentation.

SBOM Generation

The Azure blueprint includes SBOM (Software Bill of Materials) generation for container images stored in Azure Container Registry (ACR). This provides comprehensive vulnerability scanning and dependency analysis for containerized applications.

For information about supported languages and package managers for SBOM generation, see: SBOM

Schema Model

ResourcesSource EntityNormalized EntityDescription
Storage AccountstorageStorageAn Azure storage account.
Azure Storage Accountazure.storage.AccountAccountAn Azure storage account.
Storage Containerazure.storage.ContainerStorageA container within an Azure storage account.
Storage Blobstorage.BlobBlobA blob stored within an Azure storage account.
SubscriptionsubscriptionSubscriptionAn Azure subscription.
Subscription Detailssubscription.SubscriptionSubscriptionDetailed Azure subscription information.
Management GroupmanagementgroupManagementGroupA management group in Azure.
Azure Management Groupazure.managementgroup.ManagementGroupManagementGroupAn Azure-specific management group.
Resource GroupresourcegroupResourceGroupA resource group in Azure.
Azure Resource Groupazure.subscription.ResourceGroupResourceGroupA resource group in an Azure subscription.
Useruser.UserUserA user in Azure Active Directory.
Virtual NetworkvirtualnetworkVirtualNetworkA virtual network in Azure.
Azure Virtual Networkazure.network.VirtualNetworkVirtualNetworkA virtual network within an Azure subscription.
Network Interfaceazure.subscription.InterfaceInterfaceA network interface in Azure.
Subnetazure.network.SubnetSubnetA subnet within an Azure virtual network.
IP Configurationazure.subscription.IPConfigurationIPConfigurationIP configuration for Azure resources.
Security Groupazure.network.SecurityGroupSecurityGroupA network security group in Azure.
Security Ruleazure.network.SecurityRuleSecurityRuleA security rule within a network security group.
Route Tableazure.subscription.RouteTableRouteTableA route table in Azure.
Functionfunctions.FunctionFunctionAn Azure function.
Postgres Serverpostgresserver.PostgresServerDatabaseServerA PostgreSQL server in Azure.
OS Diskazure.subscription.OSDiskDiskAn OS disk for Azure virtual machines.
Virtual Machine Scale Set VM Profileazure.compute.VirtualMachineScaleSetVMProfileVMProfileA profile for virtual machine scale sets.
Availability Setazure.compute.AvailabilitySetAvailabilitySetAn availability set for Azure VMs.
Network Profileazure.subscription.NetworkProfileNetworkProfileA network profile in Azure.
Storage Profileazure.subscription.StorageProfileStorageProfileA storage profile in Azure.
Virtual Machineazure.compute.VirtualMachineVirtualMachineA virtual machine in Azure.
SKUazure.subscription.SKUSKUA specific SKU for Azure resources.
Linux Configurationazure.subscription.LinuxConfigurationConfigurationLinux-specific configurations for VMs.
Azure Active Directory Groupazure.activedirectory.GroupGroupA group in Azure Active Directory.
Azure Authorization Role Assignmentazure.authorization.RoleAssignmentRoleAssignmentA role assignment in Azure.
Billing Accountazure.billing.BillingAccountBillingAccountAn Azure billing account.
Container Registryazure.containerregistry.RegistryContainerRegistryAn Azure container registry.
Containerazure.containerapps.ContainerContainerA container in Azure Container Apps.
Container Appazure.containerapps.ContainerAppContainerAppA container application in Azure.
Container Registry Network Rule Setazure.containerregistry.NetworkRuleSetNetworkRuleSetA set of network rules for Azure Container Registry.
Container Registry IP Ruleazure.containerregistry.IPRuleIPRuleAn IP rule for Azure Container Registry.
Container Registry Policiesazure.containerregistry.PoliciesPoliciesPolicies for Azure Container Registry.
Container Registry Export Policyazure.containerregistry.ExportPolicyExportPolicyExport policy for Azure Container Registry.
Container Registry Retention Policyazure.containerregistry.RetentionPolicyRetentionPolicyRetention policy for Azure Container Registry.
Container Registry Soft Delete Policyazure.containerregistry.SoftDeletePolicySoftDeletePolicySoft delete policy for Azure Container Registry.
Container Registry Trust Policyazure.containerregistry.TrustPolicyTrustPolicyTrust policy for Azure Container Registry.
Container Registry System Dataazure.containerregistry.SystemDataSystemDataSystem data for Azure Container Registry.
Container Apps System Dataazure.containerapps.SystemDataSystemDataSystem data for Azure Container Apps.
PostgreSQL Resource Identitypostgresserver.ResourceIdentityResourceIdentityResource identity for PostgreSQL servers.
PostgreSQL Server Private Endpoint Connectionpostgresserver.ServerPrivateEndpointConnectionEndpointConnectionPrivate endpoint connection for PostgreSQL servers.
PostgreSQL Storage Profilepostgresserver.StorageProfileStorageProfileStorage profile for PostgreSQL servers.
Application Gateway Backend Address Poolazure.subscription.ApplicationGatewayBackendAddressPoolBackendAddressPoolBackend address pool for an application gateway.
Application Gateway Backend Addressazure.subscription.ApplicationGatewayBackendAddressBackendAddressBackend address for an application gateway.
Application Gateway IP Configurationazure.subscription.ApplicationGatewayIPConfigurationIPConfigurationIP configuration for an application gateway.
Application Security Groupazure.subscription.ApplicationSecurityGroupSecurityGroupSecurity group for applications.
Backend Address Poolazure.subscription.BackendAddressPoolBackendAddressPoolBackend address pool in Azure subscriptions.
Gateway Load Balancer Tunnel Interfaceazure.subscription.GatewayLoadBalancerTunnelInterfaceTunnelInterfaceTunnel interface for gateway load balancers.
Frontend IP Configurationazure.subscription.FrontendIPConfigurationIPConfigurationFrontend IP configuration in Azure subscriptions.
Inbound NAT Ruleazure.subscription.InboundNatRuleNatRuleInbound NAT rule in Azure subscriptions.
Interface IP Configurationazure.subscription.InterfaceIPConfigurationIPConfigurationInterface IP configuration in Azure subscriptions.
Interface IP Configuration Private Link Connection Propsazure.subscription.InterfaceIPConfigurationPrivateLinkConnectionPropertiesPrivateLinkPropsPrivate link connection properties for interface IP configurations.
Interface Tap Configurationazure.subscription.InterfaceTapConfigurationTapConfigurationTap configuration for interfaces in Azure subscriptions.
IP Configuration Profileazure.subscription.IPConfigurationProfileIPProfileIP configuration profile in Azure subscriptions.
Load Balancer Backend Addressazure.subscription.LoadBalancerBackendAddressBackendAddressBackend address for Azure load balancers.
NAT Rule Port Mappingazure.subscription.NatRulePortMappingPortMappingPort mapping for NAT rules in Azure subscriptions.
NAT Gatewayazure.subscription.NatGatewayGatewayNAT gateway in Azure subscriptions.
Private Endpoint IP Configurationazure.subscription.PrivateEndpointIPConfigurationEndpointConfigurationPrivate endpoint IP configuration in Azure subscriptions.
Private Endpointazure.subscription.PrivateEndpointPrivateEndpointPrivate endpoint in Azure subscriptions.
Custom DNS Config Propertiesazure.subscription.CustomDNSConfigPropertiesFormatDNSPropertiesCustom DNS configuration properties.
Private Link Service Connectionazure.subscription.PrivateLinkServiceConnectionLinkConnectionConnection for Azure private link services.
Private Link Service Connection Stateazure.subscription.PrivateLinkServiceConnectionStateConnectionStateState of private link service connection.
Private Link Serviceazure.subscription.PrivateLinkServicePrivateLinkServicePrivate link service in Azure subscriptions.
Public IP Addressazure.network.PublicIPAddressPublicIPAddressPublic IP address in Azure subscriptions.
Public IP Address SKUazure.network.PublicIPAddressSKUPublicIPAddressSKUSKU details for public IP addresses in Azure.
Public IP Address DNS Settingsazure.network.PublicIPAddressDNSSettingsDNSSettingsDNS settings for public IP addresses in Azure.
DDoS Settingsazure.subscription.DdosSettingsDdosSettingsDDoS settings for Azure resources.
IP Tagazure.subscription.IPTagIPTagIP tag for Azure subscriptions.
Resource Navigation Linkazure.subscription.ResourceNavigationLinkNavigationLinkNavigation link for Azure resources.
Routeazure.subscription.RouteRouteRoute configuration for Azure subscriptions.
Service Association Linkazure.subscription.ServiceAssociationLinkAssociationLinkAssociation link for Azure services.
Service Endpoint Policy Definitionazure.subscription.ServiceEndpointPolicyDefinitionEndpointPolicyDefinitionPolicy definition for Azure service endpoints.
Service Endpoint Policyazure.subscription.ServiceEndpointPolicyEndpointPolicyEndpoint policy for Azure services.
Service Endpoint Properties Formatazure.subscription.ServiceEndpointPropertiesFormatEndpointPropertiesProperties for Azure service endpoints.
Virtual Network Peeringazure.network.VirtualNetworkPeeringNetworkPeeringVirtual network peering in Azure.
Virtual Network Tapazure.network.VirtualNetworkTapVirtualTapVirtual tap for Azure virtual networks.
SQL Serverazure.sql.SqlServerSqlServerAn Azure SQL Database server.
SQL Databaseazure.sql.SqlDatabaseSqlDatabaseA database on an Azure SQL server.
SQL Firewall Ruleazure.sql.FirewallRuleFirewallRuleA firewall rule for an Azure SQL server.
DNS Zoneazure.dns.DnsZoneDnsZoneAn Azure DNS zone.
DNS Record Setazure.dns.DnsRecordSetDnsRecordSetA DNS record set in an Azure DNS zone.
Redis Cacheazure.redis.RedisCacheRedisCacheAn Azure Cache for Redis instance.
Redis Firewall Ruleazure.redis.RedisFirewallRuleFirewallRuleA firewall rule for Azure Cache for Redis.
Monitor Metric Alertazure.monitor.MetricAlertMetricAlertAn Azure Monitor metric alert rule.
Monitor Activity Log Alertazure.monitor.ActivityLogAlertActivityLogAlertAn Azure Monitor activity log alert.
Monitor Action Groupazure.monitor.ActionGroupActionGroupAn Azure Monitor action group.
Cosmos DB Accountazure.cosmos.CosmosAccountCosmosAccountAn Azure Cosmos DB database account.
Cosmos DB Databaseazure.cosmos.CosmosDatabaseCosmosDatabaseA database within an Azure Cosmos DB account.
WAF Policyazure.waf.WafPolicyWafPolicyAn Azure WAF policy for Application Gateway.
WAF Custom Ruleazure.waf.WafCustomRuleWafCustomRuleA custom rule within an Azure WAF policy.
API Management Serviceazure.apimanagement.ApimServiceApimServiceAn Azure API Management service instance.
API Management APIazure.apimanagement.ApimAPIApimAPIAn API within Azure API Management.
CDN Profileazure.cdn.CdnProfileCdnProfileAn Azure CDN profile.
CDN Endpointazure.cdn.CdnEndpointCdnEndpointAn endpoint within an Azure CDN profile.
Service Bus Namespaceazure.servicebus.ServiceBusNamespaceServiceBusNamespaceAn Azure Service Bus namespace.
Service Bus Queueazure.servicebus.ServiceBusQueueServiceBusQueueA queue within an Azure Service Bus namespace.
Service Bus Topicazure.servicebus.ServiceBusTopicServiceBusTopicA topic within an Azure Service Bus namespace.
Event Grid Topicazure.eventgrid.EventGridTopicEventGridTopicAn Azure Event Grid topic.
Event Grid Domainazure.eventgrid.EventGridDomainEventGridDomainAn Azure Event Grid domain.
Event Hub Namespaceazure.eventhub.EventHubNamespaceEventHubNamespaceAn Azure Event Hubs namespace.
Event Hubazure.eventhub.EventHubEventHubAn event hub within an Azure Event Hubs namespace.
OpenAI Accountazure.openai.OpenAIAccountOpenAIAccountAn Azure OpenAI cognitive services account.
OpenAI Deploymentazure.openai.OpenAIDeploymentOpenAIDeploymentA model deployment within an Azure OpenAI account.
Synapse Workspaceazure.synapse.SynapseWorkspaceSynapseWorkspaceAn Azure Synapse Analytics workspace.
Synapse SQL Poolazure.synapse.SynapseSQLPoolSynapseSQLPoolA dedicated SQL pool within a Synapse workspace.
Logic App Workflowazure.logic.LogicWorkflowLogicWorkflowAn Azure Logic Apps workflow.
Data Factoryazure.datafactory.DataFactoryFactoryDataFactoryFactoryAn Azure Data Factory instance.
Data Factory Pipelineazure.datafactory.DataFactoryPipelineDataFactoryPipelineA pipeline within an Azure Data Factory.
AI Search Serviceazure.search.SearchServiceSearchServiceAn Azure AI Search service.
ARM Deploymentazure.deployments.DeploymentDeploymentAn Azure ARM template deployment.
ARM Deployment Operationazure.deployments.DeploymentOperationDeploymentOperationAn operation within an ARM deployment.
MySQL Flexible Serverazure.mysqlserver.MysqlServerMysqlServerAn Azure Database for MySQL Flexible Server instance.
MariaDB Serverazure.mariadb.MariaDBServerMariaDBServerAn Azure Database for MariaDB server instance.
MariaDB Storage Profileazure.mariadb.StorageProfileStorageProfileStorage profile for an Azure MariaDB server.
Kusto Clusterazure.kusto.KustoClusterKustoClusterAn Azure Data Explorer (Kusto) cluster.
Purview Accountazure.purview.PurviewAccountPurviewAccountAn Azure Purview data governance account.

IaC Resource Relationships

The blueprint automatically correlates Infrastructure as Code (IaC) resources with the actual cloud resources they manage:

  • iac.DeployedAs — Links IaC source code resources (ARM and Bicep templates scanned from repositories) to their deployed ARM deployment operations, matching by resource type.
  • iac.ManagesResource — Links ARM deployment operations to the actual Azure cloud resources they provision (Virtual Machines, Key Vaults, Functions, etc.), matching by TargetResourceID.

Security Insights (CSPM)

InsightSeverityDescription
SQL Servers With Public Network AccessHighDetects Azure SQL Servers with public network access enabled, exposing database endpoints to the internet.
SQL Servers With Low TLS VersionHighDetects Azure SQL Servers allowing TLS versions below 1.2, vulnerable to known protocol attacks.
Redis Cache With Non-SSL Port EnabledHighDetects Azure Cache for Redis instances with non-SSL port enabled, allowing unencrypted connections.
Redis Cache With Public Network AccessMediumDetects Azure Cache for Redis instances with public network access, reachable from the internet.
Cosmos DB With Public Network AccessHighDetects Azure Cosmos DB accounts with public network access, exposing database endpoints to the internet.
Cosmos DB Without Automatic FailoverMediumDetects Azure Cosmos DB accounts without automatic failover, requiring manual intervention during regional outages.
API Management With Public Network AccessMediumDetects Azure API Management services with public network access, exposing APIs and management plane.
WAF Policies in Detection ModeHighDetects Azure WAF policies in Detection-only mode that log but do not block malicious requests.
Synapse Workspaces With Public Network AccessHighDetects Azure Synapse Analytics workspaces with public network access, exposing analytics data.
Data Factory With Public Network AccessMediumDetects Azure Data Factory instances with public network access, exposing data integration pipelines.
Event Grid Topics With Public Network AccessMediumDetects Azure Event Grid topics with public network access, allowing event publishing from any network.
OpenAI Accounts With Public Network AccessHighDetects Azure OpenAI accounts with public network access, exposing AI model endpoints to the internet.
AI Search With Public Network AccessMediumDetects Azure AI Search services with public network access, exposing search indexes to the internet.
ARM Deployments With Failed StatusMediumDetects Azure ARM template deployments with a Failed provisioning state, indicating infrastructure provisioning issues that may leave resources in an inconsistent state.
MySQL Flexible Servers With Public Network AccessHighDetects Azure MySQL Flexible Server instances with public network access enabled, exposing the database to the internet.
MySQL Flexible Servers With Low Backup RetentionMediumDetects Azure MySQL Flexible Server instances with backup retention configured for fewer than 7 days, limiting the recovery window.
MySQL Flexible Servers Without Geo-Redundant BackupMediumDetects Azure MySQL Flexible Server instances without geo-redundant backup enabled, risking data loss during regional outages.
MariaDB Servers Without SSL EnforcementHighDetects Azure Database for MariaDB server instances without SSL enforcement enabled, allowing unencrypted connections.
MariaDB Servers With Low Backup RetentionMediumDetects Azure Database for MariaDB server instances with backup retention configured for fewer than 7 days, limiting the recovery window.
Kusto Clusters Without Disk EncryptionMediumDetects Azure Data Explorer (Kusto) clusters with disk encryption disabled, leaving data at rest unprotected.
Kusto Clusters Without Customer-Managed Key EncryptionMediumDetects Azure Data Explorer (Kusto) clusters without customer-managed key (CMK) encryption configured, limiting control over encryption key lifecycle.
Purview Accounts With Public Network AccessHighDetects Azure Purview accounts with public network access enabled, exposing the data governance endpoint to the internet.

Events

EventDescription
MICROSOFT.STORAGE/STORAGEACCOUNTS/LISTACCOUNTSAS/ACTIONRetrieves a shared access signature (SAS) token for accessing resources in an Azure Storage account.
Sign-in ActivityLogs and retrieves information about user sign-ins for monitoring and auditing purposes.
MICROSOFT.CONTAINERREGISTRY/REGISTRIES/LISTCREDENTIALS/ACTIONRetrieves credentials for accessing an Azure Container Registry.