# Azure DNS


<!-- Code generated by gen-dns-providers; DO NOT EDIT. -->

Configuration for the [Azure DNS](https://azure.microsoft.com/services/dns/) DNS provider.

See the [lego documentation](https://go-acme.github.io/lego/dns/azuredns/) for full details.

```yaml
letsEncrypt:
  dnsProvider: "azuredns"
  dnsCredentials:
    # AZURE_CLIENT_ID: Client ID
    clientID: ""
    # AZURE_CLIENT_SECRET: Client secret
    clientSecret: ""
    # AZURE_TENANT_ID: Tenant ID
    tenantID: ""
    # AZURE_AUTH_METHOD: Specify which authentication method to use
    authMethod: ""
    # AZURE_AUTH_MSI_TIMEOUT: Managed Identity timeout duration
    authMSITimeout: ""
    # AZURE_POLLING_INTERVAL: Time between DNS propagation check in seconds (Default: 2)
    pollingInterval: ""
    # AZURE_PRIVATE_ZONE: Set to true to use Azure Private DNS Zones and not public
    privateZone: ""
    # AZURE_PROPAGATION_TIMEOUT: Maximum waiting time for DNS propagation in seconds (Default: 120)
    propagationTimeout: ""
    # AZURE_RESOURCE_GROUP: DNS zone resource group
    resourceGroup: ""
    # AZURE_SERVICEDISCOVERY_FILTER: Advanced ServiceDiscovery filter using Kusto query condition
    servicediscoveryFilter: ""
    # AZURE_SUBSCRIPTION_ID: DNS zone subscription ID
    subscriptionID: ""
    # AZURE_TTL: The TTL of the TXT record used for the DNS challenge in seconds (Default: 60)
    ttl: ""
    # AZURE_ZONE_NAME: Zone name to use inside Azure DNS service to add the TXT record in
    zoneName: ""
```

Credentials are passed directly to lego using strong types and are never written to the process environment.
You may also use the raw lego environment-variable names as keys instead of the normalized names.

In addition to the keys above, Azure DNS supports the Azure SDK's other
authentication methods (managed identity, Azure CLI, workload identity, and
client certificates). Those are selected via `authMethod` and resolved by the
Azure SDK from its own environment variables and files.

