This document describes how to configure the Microsoft Azure prerequisites and deploy a Firewall Threat Defense Virtual (FTDv) Gateway through MCD.
Cisco recommends that you have knowledge of these topics:
This document is not restricted to specific software and hardware versions.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
Use these procedures in order to prepare Microsoft Azure, connect your Azure account to MCD, and deploy an FTDv Gateway.
Note: You must create a new secret when the current secret expires.

Warning: You can view the secret value only at the time of creation.

Tip: The client secret is listed in the Value column.


Note: The JSON that you provide, not the Permissions tab, assigns permissions to the custom role.
"Microsoft.ApiManagement/service/*", "Microsoft.Compute/disks/*", "Microsoft.Compute/images/read", "Microsoft.Compute/sshPublicKeys/read", "Microsoft.Compute/virtualMachines/*", "Microsoft.ManagedIdentity/userAssignedIdentities/read", "Microsoft.ManagedIdentity/userAssignedIdentities/assign/action", "Microsoft.Network/loadBalancers/*", "Microsoft.Network/natGateways/*", "Microsoft.Network/networkinterfaces/*", "Microsoft.Network/networkSecurityGroups/*", "Microsoft.Network/publicIPAddresses/*", "Microsoft.Network/routeTables/*", "Microsoft.Network/virtualNetworks/*", "Microsoft.Network/virtualNetworks/subnets/*", "Microsoft.Resources/subscriptions/resourcegroups/*", "Microsoft.Storage/storageAccounts/blobServices/*", "Microsoft.Storage/storageAccounts/listkeys/action", "Microsoft.Network/networkWatchers/*", "Microsoft.Network/applicationSecurityGroups/*", "Microsoft.Compute/diskEncryptionSets/read", "Microsoft.Insights/Metrics/Read", "Microsoft.Network/locations/serviceTagDetails/read", "Microsoft.Network/locations/serviceTags/read", "Microsoft.CognitiveServices/*/read", "Microsoft.CognitiveServices/accounts/listkeys/action", "Microsoft.Network/virtualHubs/*", "Microsoft.Network/virtualHubs/hubRouteTables/*", "Microsoft.MarketplaceOrdering/offertypes/publishers/offers/plans/agreements/*", "Microsoft.Authorization/roleAssignments/read", "Microsoft.Authorization/roleDefinitions/read"

Note: Verify the correct spacing and tabs for the JSON code block.
This is an example of the completed role definition:
{
"id": "/subscriptions/redacted/providers/Microsoft.Authorization/roleDefinitions/redacted",
"properties": {
"roleName": "Multicloud Defense-controller-role",
"description": "mcd azure test swesnitz",
"assignableScopes": [
"/subscriptions/redacted"
],
"permissions": [
{
"actions": [
"Microsoft.ApiManagement/service/*",
"Microsoft.Compute/disks/*",
"Microsoft.Compute/images/read",
"Microsoft.Compute/sshPublicKeys/read",
"Microsoft.Compute/virtualMachines/*",
"Microsoft.ManagedIdentity/userAssignedIdentities/read",
"Microsoft.ManagedIdentity/userAssignedIdentities/assign/action",
"Microsoft.Network/loadBalancers/*",
"Microsoft.Network/natGateways/*",
"Microsoft.Network/networkinterfaces/*",
"Microsoft.Network/networkSecurityGroups/*",
"Microsoft.Network/publicIPAddresses/*",
"Microsoft.Network/routeTables/*",
"Microsoft.Network/virtualNetworks/*",
"Microsoft.Network/virtualNetworks/subnets/*",
"Microsoft.Resources/subscriptions/resourcegroups/*",
"Microsoft.Storage/storageAccounts/blobServices/*",
"Microsoft.Storage/storageAccounts/listkeys/action",
"Microsoft.Network/networkWatchers/*",
"Microsoft.Network/applicationSecurityGroups/*",
"Microsoft.Compute/diskEncryptionSets/read",
"Microsoft.Insights/Metrics/Read",
"Microsoft.Network/locations/serviceTagDetails/read",
"Microsoft.Network/locations/serviceTags/read",
"Microsoft.CognitiveServices/*/read",
...

This completes the Azure prerequisites to add the Azure Account to MCD. These procedures describe the integration and deployment through MCD.

Confirm creation of the VNet from the Azure side, navigate to Network foundation > Virtual networks overview > Virtual Networks.


The VNet transitions to an Active state once it is created.

Note: The HealthCheck Port is the port number that the Multicloud Defense load balancer uses to check the health of the instances. The datapath security groups assigned to the instances must allow traffic on this port.
Dashboard view once resources have loaded.
Dashboard view of gateway deploying.
From the MCD dashboard, the status displays ENABLING.

Monitor the status from the Summary and Instances tabs.

Use this section in order to confirm that your configuration works properly.

| Revision | Publish Date | Comments |
|---|---|---|
2.0 |
15-Oct-2026
|
Updated Title from Cluster to Gateway to Eliminate Confusion about Technology. |
1.0 |
09-Oct-2026
|
Initial Release |