> For the complete documentation index, see [llms.txt](https://cortex-docs.paloaltonetworks.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cortex-docs.paloaltonetworks.com/cortex-cloud-outposts/microsoft-azure.md).

# Microsoft Azure

The following table lists the static resources deployed on outposts in Microsoft Azure.

<table><thead><tr><th width="74.79998779296875">Scope</th><th width="110.9000244140625">IaC Resource Type</th><th width="115.0999755859375">Technical Resource Name</th><th width="98">Required for These Modules</th><th>Purpose</th></tr></thead><tbody><tr><td>Global</td><td><code>azuread_application_api_access</code></td><td><code>outpost_o365_rms_api</code></td><td>DSPM</td><td>This resource grants API access permissions to the Microsoft Graph API for the outpost_o365_rms_api application. Cortex requires these permissions for DSPM to scan Office 365 environments and identify sensitive data or configuration risks.</td></tr><tr><td>Global</td><td><code>azuread_application_api_access</code></td><td><code>outpost_o365_sharepoint_api</code></td><td>DSPM</td><td>This resource grants API access permissions to the Microsoft Graph API for the outpost_o365_sharepoint_api application. Cortex requires these permissions for DSPM to scan Office 365 environments and identify sensitive data or configuration risks.</td></tr><tr><td>Global</td><td><code>azuread_application_federated_identity_credential</code></td><td><code>federated_cts_gke_serviceaccount</code></td><td>Registry, DSPM, ADS, Serverless</td><td>This resource manages the federated identity credential for the federated_cts_gke_serviceaccount application. It establishes a secure authentication bridge between Cortex and the customer-managed environment to allow the outpost to authenticate without persistent secrets.</td></tr><tr><td>Global</td><td><code>azuread_application_federated_identity_credential</code></td><td><code>federated_cts_gke_serviceaccount_o365_app</code></td><td>DSPM</td><td>This resource manages the federated identity credential for the federated_cts_gke_serviceaccount_o365_app application. It establishes a secure authentication bridge between Cortex and the customer-managed environment to allow the outpost to authenticate without persistent secrets.</td></tr><tr><td>Global</td><td><code>azuread_application_federated_identity_credential</code></td><td><code>federated_dspm_managed_identity</code></td><td>DSPM</td><td>This resource manages the federated identity credential for the federated_dspm_managed_identity application. It establishes a secure authentication bridge between Cortex and the customer-managed environment to allow the outpost to authenticate without persistent secrets.</td></tr><tr><td>Global</td><td><code>azuread_application_federated_identity_credential</code></td><td><code>federated_dspm_managed_identity_o365_app</code></td><td>DSPM</td><td>This resource manages the federated identity credential for the federated_dspm_managed_identity_o365_app application. It establishes a secure authentication bridge between Cortex and the customer-managed environment to allow the outpost to authenticate without persistent secrets.</td></tr><tr><td>Global</td><td><code>azuread_application_federated_identity_credential</code></td><td><code>federated_registry_managed_identity</code></td><td>Registry</td><td>This resource manages the federated identity credential for the federated_registry_managed_identity application. It establishes a secure authentication bridge between Cortex and the customer-managed environment to allow the outpost to authenticate without persistent secrets.</td></tr><tr><td>Global</td><td><code>azuread_application_federated_identity_credential</code></td><td><code>federated_serverless_managed_identity</code></td><td>Serverless</td><td>This resource manages the federated identity credential for the federated_serverless_managed_identity application. It establishes a secure authentication bridge between Cortex and the customer-managed environment to allow the outpost to authenticate without persistent secrets.</td></tr><tr><td>Global</td><td><code>azuread_application_redirect_uris</code></td><td><code>outpost_registration_redirect_uri</code></td><td>DSPM</td><td>This resource configures the redirect URIs for the outpost_registration_redirect_uri application registration. Cortex requires these URIs to properly handle authentication responses and redirect traffic to the Cortex platform during the DSPM setup.</td></tr><tr><td>Global</td><td><code>azuread_application_redirect_uris</code></td><td><code>outpost_registration_redirect_uri_o365_app</code></td><td>DSPM</td><td>This resource configures the redirect URIs for the outpost_registration_redirect_uri_o365_app application registration. Cortex requires these URIs to properly handle authentication responses and redirect traffic to the Cortex platform during the DSPM setup.</td></tr><tr><td>Global</td><td><code>azuread_application_registration</code></td><td><code>outpost_app_registration</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource registers the outpost_app_registration application within Azure Active Directory to provide a unique identity for the outpost. Cortex uses this registration to establish the identity required for performing cross-tenant operations in ADS, Serverless, Registry, and DSPM.</td></tr><tr><td>Global</td><td><code>azuread_application_registration</code></td><td><code>outpost_o365_app_registration</code></td><td>DSPM</td><td>This resource registers the outpost_o365_app_registration application within Azure Active Directory to provide a unique identity for the outpost. Cortex uses this registration to establish the identity required for performing cross-tenant operations in DSPM.</td></tr><tr><td>Global</td><td><code>azuread_service_principal</code></td><td><code>outpost_o365_sp</code></td><td>DSPM</td><td>This resource creates a service principal for the outpost_o365_sp application to enable identity-based access to resources. Cortex utilizes this service principal to assign the specific permissions needed for scanners to access target resources during DSPM operations.</td></tr><tr><td>Global</td><td><code>azuread_service_principal</code></td><td><code>outpost_sp</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource creates a service principal for the outpost_sp application to enable identity-based access to resources. Cortex utilizes this service principal to assign the specific permissions needed for scanners to access target resources during ADS, Serverless, Registry, and DSPM operations.</td></tr><tr><td>Regional</td><td><code>azurerm_application_security_group</code></td><td><code>ads</code></td><td>ADS</td><td>Note: This per-type ASG is not created by the current outpost terraform module. It may appear in deployments from older module versions; the current model uses the unified scanner ASG instead. This resource creates an Application Security Group (ASG) to group scanner virtual machines (VMs) by function. This ASG applies to all scanner VM types, including ADS, DSPM, Registry, and Serverless. By grouping these VMs, Cortex can simplify the management of security rules, applying traffic filtering policies to the functional group rather than to individual IP addresses.</td></tr><tr><td>Regional</td><td><code>azurerm_application_security_group</code></td><td><code>dspm</code></td><td>DSPM</td><td>Note: This per-type ASG is not created by the current outpost terraform module. It may appear in deployments from older module versions; the current model uses the unified scanner ASG instead. This resource creates an Application Security Group (ASG) used to group virtual machines based on their function for dspm. Cortex uses the ASG to simplify the management of security rules for scanners by applying policies to the functional group rather than individual IP addresses.</td></tr><tr><td>Regional</td><td><code>azurerm_application_security_group</code></td><td><code>private_endpoint</code></td><td>Serverless, Registry, DSPM</td><td>This resource creates an Application Security Group (ASG) to group private endpoints by function. By grouping these resources, Cortex can simplify the management of security rules, applying traffic filtering policies to the functional group rather than to individual IP addresses or subnets.</td></tr><tr><td>Regional</td><td><code>azurerm_application_security_group</code></td><td><code>proxy</code></td><td>Serverless, Registry, DSPM</td><td>This resource creates an Application Security Group (ASG) to group proxy virtual machines (VMs) by function. By grouping these VMs, Cortex can simplify the management of security rules, applying traffic filtering policies to the functional group rather than to individual IP addresses.</td></tr><tr><td>Regional</td><td><code>azurerm_application_security_group</code></td><td><code>registry</code></td><td>Registry</td><td>Note: This per-type ASG is not created by the current outpost terraform module. It may appear in deployments from older module versions; the current model uses the unified scanner ASG instead. This resource creates an Application Security Group (ASG) used to group virtual machines based on their function for registry. Cortex uses the ASG to simplify the management of security rules for scanners by applying policies to the functional group rather than individual IP addresses.</td></tr><tr><td>Regional</td><td><code>azurerm_application_security_group</code></td><td><code>scanner</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource creates an Application Security Group (ASG) to group scanner virtual machines (VMs) by function. This ASG applies to all scanner VM types, including ADS, DSPM, Registry, and Serverless. By grouping these VMs, Cortex can simplify the management of security rules, applying traffic filtering policies to the functional group rather than to individual IP addresses.</td></tr><tr><td>Regional</td><td><code>azurerm_application_security_group</code></td><td><code>serverless</code></td><td>Serverless</td><td>Note: This per-type ASG is not created by the current outpost terraform module. It may appear in deployments from older module versions; the current model uses the unified scanner ASG instead. This resource creates an Application Security Group (ASG) used to group virtual machines based on their function for serverless. Cortex uses the ASG to simplify the management of security rules for scanners by applying policies to the functional group rather than individual IP addresses.</td></tr><tr><td>Regional</td><td><code>azurerm_eventgrid_system_topic</code></td><td><code>eventgrid_topic</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource creates an Event Grid system topic to aggregate events from eventgrid_topic. Cortex monitors this topic to receive real-time notifications about resource changes that should trigger automated scanning or discovery tasks. Resource changes occur when new scan results are uploaded to the storage container, with the use of EventGrid and storage queue.</td></tr><tr><td>Regional</td><td><code>azurerm_eventgrid_system_topic_event_subscription</code></td><td><code>bucket_communication</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource creates a subscription to the Event Grid system topic for the bucket_communication configuration. Cortex uses this subscription to deliver event data to the appropriate outpost component for immediate processing of new scan targets. The subscription routes storage-account change events to a storage queue endpoint that feeds the Cortex scan pipeline.</td></tr><tr><td>Regional</td><td><code>azurerm_key_vault</code></td><td><code>outpost_key_vault</code></td><td>Registry, DSPM</td><td>This resource creates the outpost_key_vault Azure Key Vault used to store secrets that scanner VMs and the Cortex platform retrieve at runtime. Its primary content is registry access keys (for Registry scanner authentication to customer container registries) and data-store access credentials (for DSPM scanners). The Key Vault is a Standard-SKU vault with soft-delete (7-day retention) and purge protection enabled; access is restricted by the network ACL to the outpost subnet plus the explicitly allowlisted Cortex platform public IPs.</td></tr><tr><td>Regional</td><td><code>azurerm_key_vault_access_policy</code></td><td><code>dspm_vm_kv_policy</code></td><td>Registry, DSPM</td><td>This resource defines the access policy for the dspm_vm_kv_policy identity to interact with the Azure Key Vault. Cortex configures these policies to grant scanners the permissions needed to retrieve secrets during scanning and discovery.</td></tr><tr><td>Regional</td><td><code>azurerm_key_vault_access_policy</code></td><td><code>registry_vm_kv_policy</code></td><td>Registry, DSPM</td><td>This resource defines the access policy for the registry_vm_kv_policy identity to interact with the Azure Key Vault. Cortex configures these policies to grant scanners the permissions needed to retrieve secrets during scanning and discovery.</td></tr><tr><td>Regional</td><td><code>azurerm_key_vault_access_policy</code></td><td><code>st_kv_policy</code></td><td>Registry, DSPM</td><td>This resource defines the access policy for the st_kv_policy identity to interact with the Azure Key Vault. Cortex configures these policies to grant scanners the permissions needed to retrieve secrets during scanning and discovery.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_group</code></td><td><code>outpost</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource creates the regional outpost Network Security Group (NSG), which is used to filter and control inbound and outbound traffic for the outpost. Cortex uses this NSG to enforce security boundaries, ensuring that scanners for ADS, Serverless, Registry, and DSPM operations can only communicate with authorized endpoints. The NSG segments the scanner, proxy, and private endpoint subnets.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_active_directory_outbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_active_directory_outbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage dspm scanning of Active Directory during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_active_directory_outbound_scanner</code></td><td>DSPM</td><td>This resource defines the azurerm_network_security_rule allow_active_directory_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow scanners to outbound to the Active Directory service tag during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_azure_cloud_outbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_azure_cloud_outbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage dspm scanning cloud outbound for AzureCloud during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_azure_cloud_outbound_proxy</code></td><td>Serverless, Registry, DSPM</td><td>This resource defines the allow_azure_cloud_outbound_proxy security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage cloud outbound for egress during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_azure_cloud_outbound_registry</code></td><td>Registry</td><td>This resource defines the allow_azure_cloud_outbound_registry security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage registry scanning cloud outbound for AzureCloud during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_azure_cloud_outbound_scanner</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource defines the azurerm_network_security_rule allow_azure_cloud_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow scanners to outbound to the AzureCloud service tag during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_azure_cloud_outbound_serverless</code></td><td>Serverless</td><td>This resource defines the allow_azure_cloud_outbound_serverless security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage serverless scanning cloud outbound for AzureCloud during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_cognitive_services_frontend_outbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_cognitive_services_frontend_outbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage AISPM scanning for the Azure Cognitive Services service tag during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_cognitive_services_frontend_outbound_scanner</code></td><td>DSPM</td><td>This resource defines the azurerm_network_security_rule allow_cognitive_services_frontend_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage AISPM scanning for the Azure Cognitive Services service tag during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_cognitive_services_management_outbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_cognitive_services_management_outbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage AISPM scanning for the Azure Cognitive Services service tag during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_cognitive_services_management_outbound_scanner</code></td><td>DSPM</td><td>This resource defines the azurerm_network_security_rule allow_cognitive_services_management_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage AISPM scanning for the Azure Cognitive Services service tag during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_cosmosdb_outbound_scanner</code></td><td>DSPM</td><td>This resource defines the azurerm_network_security_rule allow_cosmosdb_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow scanners to outbound to Cosmos DB during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_frontdoor_outbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_frontdoor_outbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage AISPM scanning for Front Door during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_frontdoor_outbound_scanner</code></td><td>DSPM</td><td>This resource defines the azurerm_network_security_rule allow_frontdoor_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow dspm scanners to Front Door during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_key_vault_outbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_key_vault_outbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex uses this rule to enable scanners to reach the Key Vault for retrieving encryption keys or secrets.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_key_vault_outbound_registry</code></td><td>Registry</td><td>This resource defines the allow_key_vault_outbound_registry security rule within an NSG to permit or deny specific network traffic. Cortex uses this rule to enable scanners to reach the Key Vault for retrieving encryption keys or secrets.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_key_vault_outbound_scanner</code></td><td>Registry, DSPM</td><td>This resource defines the azurerm_network_security_rule allow_key_vault_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex uses this rule to enable scanners to reach the Key Vault for retrieving encryption keys or secrets.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_outbound_to_proxy_dspm_vms</code></td><td>DSPM</td><td>This resource defines the allow_outbound_to_proxy_dspm_vms security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage dspm scanning access to the egress VM during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_outbound_to_proxy_registry_vms</code></td><td>Registry</td><td>This resource defines the allow_outbound_to_proxy_registry_vms security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage registry scanning access to the egress VM during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_outbound_to_proxy_scanner_vms</code></td><td>Serverless, Registry, DSPM</td><td>This resource defines the azurerm_network_security_rule allow_outbound_to_proxy_scanner_vms security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow scanners to outbound to the egress proxy during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_outbound_to_proxy_serverless_vms</code></td><td>Serverless</td><td>This resource defines the allow_outbound_to_proxy_serverless_vms security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage serverless scanning access to the egress VM during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_private_endpoint_dspm</code></td><td>DSPM</td><td>This resource defines the allow_private_endpoint_dspm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to manage dspm scanning access to private endpoints during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_private_endpoint_inbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_private_endpoint_inbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow dspm scanning access to private endpoints during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_private_endpoint_inbound_registry</code></td><td>Registry</td><td>This resource defines the allow_private_endpoint_inbound_registry security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow registry scanning access to private endpoints during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_private_endpoint_inbound_scanner</code></td><td></td><td>This resource defines the allow_private_endpoint_inbound_scanner security rule within an NSG to permit or deny specific network traffic to the private endpoints, allowing scanning of Azure PaaS services. Cortex implements this rule to allow scanning access to private endpoints.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_private_endpoint_registry</code></td><td>Registry</td><td>This resource defines the allow_private_endpoint_registry security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow registry scanning access to private endpoints during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_private_endpoint_scanner</code></td><td>DSPM</td><td>This resource defines the azurerm_network_security_rule allow_private_endpoint_scanner security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow scanners to outbound to private endpoints during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_proxy_inbound_from_dspm_vm</code></td><td>DSPM</td><td>This resource defines the allow_proxy_inbound_from_dspm_vm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow dspm scanning access to the egress VM during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_proxy_inbound_from_registry_vms</code></td><td>Registry</td><td>This resource defines the allow_proxy_inbound_from_registry_vms security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow registry scanning access to the egress VM during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_proxy_inbound_from_scanner_vm</code></td><td></td><td>This resource defines the allow_proxy_inbound_from_scanner_vm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow scanner VM access to the ingress VM during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_proxy_inbound_from_serverless_vms</code></td><td>Serverless</td><td>This resource defines the allow_proxy_inbound_from_serverless_vms security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow serverless scanning access to the egress VM during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_proxy_vm_outbound</code></td><td>Serverless, Registry, DSPM</td><td>This resource defines the allow_proxy_vm_outbound security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow egress VM outbound communication during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_resource_manager_outbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_resource_manager_outbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow communication with the Azure Resource Manager service tag during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_resource_manager_outbound_scanner</code></td><td>DSPM, Registry, Serverless, ADS</td><td>This resource defines the azurerm_network_security_rule allow_resource_manager_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow scanners to communicate with the Azure Resource Manager service tag during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_sql_outbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_sql_outbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow dspm scanner outbound to SQL during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_sql_outbound_scanner</code></td><td>DSPM</td><td>This resource defines the azurerm_network_security_rule allow_sql_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to allow scanners to outbound to Azure SQL during the outpost scanning and discovery process.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_storage_outbound_ads</code></td><td>ADS</td><td>This resource defines the allow_storage_outbound_ads security rule within an NSG to permit or deny specific network traffic. Cortex configures this rule to allow outbound communication from scanners to Azure Storage for data retrieval and result logging.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_storage_outbound_dspm</code></td><td>DSPM</td><td>This resource defines the allow_storage_outbound_dspm security rule within an NSG to permit or deny specific network traffic. Cortex configures this rule to allow outbound communication from scanners to Azure Storage for data retrieval and result logging.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_storage_outbound_proxy</code></td><td>Serverless, Registry, DSPM</td><td>This resource defines the allow_storage_outbound_proxy security rule within an NSG to permit or deny specific network traffic. Cortex configures this rule to allow outbound communication from scanners to Azure Storage for data retrieval and result logging.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_storage_outbound_registry</code></td><td>Registry</td><td>This resource defines the allow_storage_outbound_registry security rule within an NSG to permit or deny specific network traffic. Cortex configures this rule to allow outbound communication from scanners to Azure Storage for data retrieval and result logging.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>allow_storage_outbound_scanner</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource defines the azurerm_network_security_rule allow_storage_outbound_scanner security rule within an NSG to permit or deny specific network traffic. Cortex configures this rule to allow outbound communication from scanners to Azure Storage for data retrieval and result logging.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>deny_all_inbound_rule</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource defines the deny_all_inbound_rule security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule as a security best practice to block all unauthorized traffic that does not match more specific allow rules.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>deny_all_outbound_rule</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource defines the deny_all_outbound_rule security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule as a security best practice to block all unauthorized traffic that does not match more specific allow rules.</td></tr><tr><td>Regional</td><td><code>azurerm_network_security_rule</code></td><td><code>deny_proxy_vm_outbound_to_subnet</code></td><td>Serverless, Registry, DSPM</td><td>This resource defines the deny_proxy_vm_outbound_to_subnet security rule within an NSG to permit or deny specific network traffic. Cortex implements this rule to deny proxy access to the subnet during the outpost scanning and discovery process.</td></tr><tr><td>Global</td><td><code>azurerm_resource_group</code></td><td><code>azure_outpost_cwp_agentless</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource defines the azure_outpost_cwp_agentless Azure Resource Group which serves as a logical container for related outpost infrastructure. Cortex uses this group to organize and manage the lifecycle of all infrastructure components deployed in the customer environment.</td></tr><tr><td>Global</td><td><code>azurerm_role_assignment</code></td><td><code>cortex_private_endpoint_role_assignment</code></td><td>Serverless, Registry, DSPM</td><td>This resource assigns an Azure RBAC role to a specific identity for the cortex_private_endpoint_role_assignment scope. Cortex uses these assignments to grant outpost managed identities the precise permissions needed to scan resources or manage data in storage accounts for Serverless, Registry, and DSPM.</td></tr><tr><td>Global</td><td><code>azurerm_role_assignment</code></td><td><code>cortex_role_assignment</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource assigns an Azure RBAC role to a specific identity for the cortex_role_assignment scope. Cortex uses these assignments to grant outpost managed identities the precise permissions needed to scan resources or manage data in storage accounts for ADS, Serverless, Registry, and DSPM.</td></tr><tr><td>Global</td><td><code>azurerm_role_assignment</code></td><td><code>cortex_storage_queue_role_assignment</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource assigns an Azure RBAC role to a specific identity for the cortex_storage_queue_role_assignment scope. Cortex uses these assignments to grant outpost managed identities the precise permissions needed to scan resources or manage data in storage accounts for ADS, Serverless, Registry, and DSPM.</td></tr><tr><td>Global</td><td><code>azurerm_role_assignment</code></td><td><code>dspm_managed_identity_storage_blob_role_assignment</code></td><td>DSPM</td><td>This resource assigns an Azure RBAC role to a specific identity for the dspm_managed_identity_storage_blob_role_assignment scope. Cortex uses these assignments to grant outpost managed identities the precise permissions needed to scan resources or manage data in storage accounts for DSPM.</td></tr><tr><td>Global</td><td><code>azurerm_role_assignment</code></td><td><code>managed_identity_storage_blob_role_assignment</code></td><td>ADS</td><td>This resource assigns an Azure RBAC role to a specific identity for the managed_identity_storage_blob_role_assignment scope. Cortex uses these assignments to grant outpost managed identities the precise permissions needed to scan resources or manage data in storage accounts for ADS.</td></tr><tr><td>Global</td><td><code>azurerm_role_assignment</code></td><td><code>proxy_managed_identity_storage_blob_proxy_role_assignment</code></td><td>Serverless, Registry, DSPM</td><td>This resource assigns an Azure RBAC role to a specific identity for the proxy_managed_identity_storage_blob_proxy_role_assignment scope. Cortex uses these assignments to grant outpost managed identities the precise permissions needed to scan resources or manage data in storage accounts for Serverless, Registry, and DSPM.</td></tr><tr><td>Global</td><td><code>azurerm_role_assignment</code></td><td><code>registry_managed_identity_storage_blob_role_assignment</code></td><td>Registry</td><td>This resource assigns an Azure RBAC role to a specific identity for the registry_managed_identity_storage_blob_role_assignment scope. Cortex uses these assignments to grant outpost managed identities the precise permissions needed to scan resources or manage data in storage accounts for Registry.</td></tr><tr><td>Global</td><td><code>azurerm_role_assignment</code></td><td><code>serverless_managed_identity_storage_blob_role_assignment</code></td><td>Serverless</td><td>This resource assigns an Azure RBAC role to a specific identity for the serverless_managed_identity_storage_blob_role_assignment scope. Cortex uses these assignments to grant outpost managed identities the precise permissions needed to scan resources or manage data in storage accounts for Serverless.</td></tr><tr><td>Global</td><td><code>azurerm_role_assignment</code></td><td><code>storage_blob_role_assignment</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource assigns an Azure RBAC role to a specific identity for the storage_blob_role_assignment scope. Cortex uses these assignments to grant outpost managed identities the precise permissions needed to scan resources or manage data in storage accounts for ADS, Serverless, Registry, and DSPM.</td></tr><tr><td>Global</td><td><code>azurerm_role_definition</code></td><td><code>app_registration_cortex_role</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource defines the App Registration Cortex Role (also referred to as Workload Orchestrator), a custom Azure RBAC role with actions scoped to the resource group.</td></tr><tr><td>Regional</td><td><code>azurerm_storage_account</code></td><td><code>storage_account</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource creates the storage_account Azure Storage account to provide durable and highly available cloud storage. The outpost uses this account to store temporary scan results and facilitate communication between the local environment and the Cortex platform.</td></tr><tr><td>Regional</td><td><code>azurerm_storage_container</code></td><td><code>artifact_container</code></td><td>DSPM</td><td>This resource creates the artifact_container blob container within the storage account. Cortex utilizes this container to manage data objects and facilitate bucket-level communication for the DSPM modules.</td></tr><tr><td>Regional</td><td><code>azurerm_storage_container</code></td><td><code>bucket_communication</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource creates the bucket_communication blob container within the storage account. Cortex utilizes this container to manage data objects and facilitate bucket-level communication for the ADS, Serverless, Registry, and DSPM modules.</td></tr><tr><td>Regional</td><td><code>azurerm_storage_management_policy</code></td><td><code>storage_management_policy</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource configures lifecycle management rules for the storage account. Cortex applies this policy to automatically delete old scan data and logs to minimize storage costs and meet data retention requirements. The policy can also tier blobs to cooler storage classes on a schedule.</td></tr><tr><td>Regional</td><td><code>azurerm_storage_queue</code></td><td><code>bucket_communication</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource creates the bucket_communication storage queue to support asynchronous message processing. Cortex uses this queue to notify the system of new events when a new blob is uploaded to a storage container during ADS, Serverless, Registry, and DSPM scans.</td></tr><tr><td>Regional</td><td><code>azurerm_subnet</code></td><td><code>outpost_subnet</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource defines the outpost_subnet, a dedicated and private subnet within the Virtual Network. Cortex hosts outpost scanners for ADS, Serverless, Registry, and DSPM within this subnet, which logically separates scanning traffic from other workloads in the customer's environment. By default, this subnet is configured to be private, enables regional service endpoints, and includes Network Security Group (NSG) support for private endpoints.</td></tr><tr><td>Regional</td><td><code>azurerm_subnet_network_security_group_association</code></td><td><code>outpost_subnet_nsg_association</code></td><td>ADS, Serverless, Registry, DSPM</td><td>This resource links a network security group to the outpost_subnet subnet. Cortex requires this association to apply the defined security rules to the outpost scanners hosted within that subnet.</td></tr><tr><td>Global</td><td><code>azurerm_user_assigned_identity</code></td><td><code>agentless</code></td><td>ADS</td><td>This resource creates a user-assigned managed identity for the agentless (ADS) component. To enable secure cross-tenant authentication, this identity must be registered as a federated credential on the outpost App Registration. The outpost scanners use this identity to securely interact with Azure APIs and storage resources without the need for manual credential management.</td></tr><tr><td>Global</td><td><code>azurerm_user_assigned_identity</code></td><td><code>dspm</code></td><td>DSPM</td><td>This resource creates a user-assigned managed identity for the DSPM component. To enable secure cross-tenant authentication, this identity must be registered as a federated credential on the outpost App Registration. The outpost scanners use this identity to securely interact with Azure APIs and storage resources without the need for manual credential management.</td></tr><tr><td>Global</td><td><code>azurerm_user_assigned_identity</code></td><td><code>proxy</code></td><td>Serverless, Registry, DSPM</td><td>This resource creates a user-assigned managed identity for the proxy component. The outpost scanners use this identity to securely interact with Azure APIs and storage resources without the need for manual credential management.</td></tr><tr><td>Global</td><td><code>azurerm_user_assigned_identity</code></td><td><code>registry</code></td><td>Registry</td><td>This resource creates a user-assigned managed identity for the registry component. To enable secure cross-tenant authentication, this identity must be registered as a federated credential on the outpost App Registration. The outpost scanners use this identity to securely interact with Azure APIs and storage resources without the need for manual credential management.</td></tr><tr><td>Global</td><td><code>azurerm_user_assigned_identity</code></td><td><code>serverless</code></td><td>Serverless</td><td>This resource creates a user-assigned managed identity for the serverless component. To enable secure cross-tenant authentication, this identity must be registered as a federated credential on the outpost App Registration. The outpost scanners use this identity to securely interact with Azure APIs and storage resources without the need for manual credential management.</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://cortex-docs.paloaltonetworks.com/cortex-cloud-outposts/microsoft-azure.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
