Azure Classic

v5.25.0 published on Thursday, Nov 24, 2022 by Pulumi

FrontdoorCustomDomain

Example CNAME Record Usage

!>IMPORTANT: You must include the depends_on meta-argument which references both the azure.cdn.FrontdoorRoute and the azure.cdn.FrontdoorSecurityPolicy that are associated with your Custom Domain. The reason for these depends_on meta-arguments is because all of the resources for the Custom Domain need to be associated within Front Door before the CNAME record can be written to the domains DNS, else the CNAME validation will fail and Front Door will not enable traffic to the Domain.

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = new azure.dns.CNameRecord("example", {
    zoneName: azurerm_dns_zone.example.name,
    resourceGroupName: azurerm_resource_group.example.name,
    ttl: 3600,
    record: azurerm_cdn_frontdoor_endpoint.example.host_name,
}, {
    dependsOn: [
        azurerm_cdn_frontdoor_route.example,
        azurerm_cdn_frontdoor_security_policy.example,
    ],
});
import pulumi
import pulumi_azure as azure

example = azure.dns.CNameRecord("example",
    zone_name=azurerm_dns_zone["example"]["name"],
    resource_group_name=azurerm_resource_group["example"]["name"],
    ttl=3600,
    record=azurerm_cdn_frontdoor_endpoint["example"]["host_name"],
    opts=pulumi.ResourceOptions(depends_on=[
            azurerm_cdn_frontdoor_route["example"],
            azurerm_cdn_frontdoor_security_policy["example"],
        ]))
using System.Collections.Generic;
using Pulumi;
using Azure = Pulumi.Azure;

return await Deployment.RunAsync(() => 
{
    var example = new Azure.Dns.CNameRecord("example", new()
    {
        ZoneName = azurerm_dns_zone.Example.Name,
        ResourceGroupName = azurerm_resource_group.Example.Name,
        Ttl = 3600,
        Record = azurerm_cdn_frontdoor_endpoint.Example.Host_name,
    }, new CustomResourceOptions
    {
        DependsOn = new[]
        {
            azurerm_cdn_frontdoor_route.Example,
            azurerm_cdn_frontdoor_security_policy.Example,
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dns"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewCNameRecord(ctx, "example", &dns.CNameRecordArgs{
			ZoneName:          pulumi.Any(azurerm_dns_zone.Example.Name),
			ResourceGroupName: pulumi.Any(azurerm_resource_group.Example.Name),
			Ttl:               pulumi.Int(3600),
			Record:            pulumi.Any(azurerm_cdn_frontdoor_endpoint.Example.Host_name),
		}, pulumi.DependsOn([]pulumi.Resource{
			azurerm_cdn_frontdoor_route.Example,
			azurerm_cdn_frontdoor_security_policy.Example,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.dns.CNameRecord;
import com.pulumi.azure.dns.CNameRecordArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var example = new CNameRecord("example", CNameRecordArgs.builder()        
            .zoneName(azurerm_dns_zone.example().name())
            .resourceGroupName(azurerm_resource_group.example().name())
            .ttl(3600)
            .record(azurerm_cdn_frontdoor_endpoint.example().host_name())
            .build(), CustomResourceOptions.builder()
                .dependsOn(                
                    azurerm_cdn_frontdoor_route.example(),
                    azurerm_cdn_frontdoor_security_policy.example())
                .build());

    }
}
resources:
  example:
    type: azure:dns:CNameRecord
    properties:
      zoneName: ${azurerm_dns_zone.example.name}
      resourceGroupName: ${azurerm_resource_group.example.name}
      ttl: 3600
      record: ${azurerm_cdn_frontdoor_endpoint.example.host_name}
    options:
      dependson:
        - ${azurerm_cdn_frontdoor_route.example}
        - ${azurerm_cdn_frontdoor_security_policy.example}

Example Usage

using System.Collections.Generic;
using Pulumi;
using Azure = Pulumi.Azure;

return await Deployment.RunAsync(() => 
{
    var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new()
    {
        Location = "West Europe",
    });

    var exampleZone = new Azure.Dns.Zone("exampleZone", new()
    {
        ResourceGroupName = azurerm_resource_group.Test.Name,
    });

    var exampleFrontdoorProfile = new Azure.Cdn.FrontdoorProfile("exampleFrontdoorProfile", new()
    {
        ResourceGroupName = exampleResourceGroup.Name,
        SkuName = "Standard_AzureFrontDoor",
    });

    var exampleFrontdoorCustomDomain = new Azure.Cdn.FrontdoorCustomDomain("exampleFrontdoorCustomDomain", new()
    {
        CdnFrontdoorProfileId = exampleFrontdoorProfile.Id,
        DnsZoneId = exampleZone.Id,
        HostName = "contoso.fabrikam.com",
        Tls = new Azure.Cdn.Inputs.FrontdoorCustomDomainTlsArgs
        {
            CertificateType = "ManagedCertificate",
            MinimumTlsVersion = "TLS12",
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/cdn"
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dns"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleZone, err := dns.NewZone(ctx, "exampleZone", &dns.ZoneArgs{
			ResourceGroupName: pulumi.Any(azurerm_resource_group.Test.Name),
		})
		if err != nil {
			return err
		}
		exampleFrontdoorProfile, err := cdn.NewFrontdoorProfile(ctx, "exampleFrontdoorProfile", &cdn.FrontdoorProfileArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			SkuName:           pulumi.String("Standard_AzureFrontDoor"),
		})
		if err != nil {
			return err
		}
		_, err = cdn.NewFrontdoorCustomDomain(ctx, "exampleFrontdoorCustomDomain", &cdn.FrontdoorCustomDomainArgs{
			CdnFrontdoorProfileId: exampleFrontdoorProfile.ID(),
			DnsZoneId:             exampleZone.ID(),
			HostName:              pulumi.String("contoso.fabrikam.com"),
			Tls: &cdn.FrontdoorCustomDomainTlsArgs{
				CertificateType:   pulumi.String("ManagedCertificate"),
				MinimumTlsVersion: pulumi.String("TLS12"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.dns.Zone;
import com.pulumi.azure.dns.ZoneArgs;
import com.pulumi.azure.cdn.FrontdoorProfile;
import com.pulumi.azure.cdn.FrontdoorProfileArgs;
import com.pulumi.azure.cdn.FrontdoorCustomDomain;
import com.pulumi.azure.cdn.FrontdoorCustomDomainArgs;
import com.pulumi.azure.cdn.inputs.FrontdoorCustomDomainTlsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()        
            .location("West Europe")
            .build());

        var exampleZone = new Zone("exampleZone", ZoneArgs.builder()        
            .resourceGroupName(azurerm_resource_group.test().name())
            .build());

        var exampleFrontdoorProfile = new FrontdoorProfile("exampleFrontdoorProfile", FrontdoorProfileArgs.builder()        
            .resourceGroupName(exampleResourceGroup.name())
            .skuName("Standard_AzureFrontDoor")
            .build());

        var exampleFrontdoorCustomDomain = new FrontdoorCustomDomain("exampleFrontdoorCustomDomain", FrontdoorCustomDomainArgs.builder()        
            .cdnFrontdoorProfileId(exampleFrontdoorProfile.id())
            .dnsZoneId(exampleZone.id())
            .hostName("contoso.fabrikam.com")
            .tls(FrontdoorCustomDomainTlsArgs.builder()
                .certificateType("ManagedCertificate")
                .minimumTlsVersion("TLS12")
                .build())
            .build());

    }
}
import pulumi
import pulumi_azure as azure

example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
example_zone = azure.dns.Zone("exampleZone", resource_group_name=azurerm_resource_group["test"]["name"])
example_frontdoor_profile = azure.cdn.FrontdoorProfile("exampleFrontdoorProfile",
    resource_group_name=example_resource_group.name,
    sku_name="Standard_AzureFrontDoor")
example_frontdoor_custom_domain = azure.cdn.FrontdoorCustomDomain("exampleFrontdoorCustomDomain",
    cdn_frontdoor_profile_id=example_frontdoor_profile.id,
    dns_zone_id=example_zone.id,
    host_name="contoso.fabrikam.com",
    tls=azure.cdn.FrontdoorCustomDomainTlsArgs(
        certificate_type="ManagedCertificate",
        minimum_tls_version="TLS12",
    ))
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleZone = new azure.dns.Zone("exampleZone", {resourceGroupName: azurerm_resource_group.test.name});
const exampleFrontdoorProfile = new azure.cdn.FrontdoorProfile("exampleFrontdoorProfile", {
    resourceGroupName: exampleResourceGroup.name,
    skuName: "Standard_AzureFrontDoor",
});
const exampleFrontdoorCustomDomain = new azure.cdn.FrontdoorCustomDomain("exampleFrontdoorCustomDomain", {
    cdnFrontdoorProfileId: exampleFrontdoorProfile.id,
    dnsZoneId: exampleZone.id,
    hostName: "contoso.fabrikam.com",
    tls: {
        certificateType: "ManagedCertificate",
        minimumTlsVersion: "TLS12",
    },
});
resources:
  exampleResourceGroup:
    type: azure:core:ResourceGroup
    properties:
      location: West Europe
  exampleZone:
    type: azure:dns:Zone
    properties:
      resourceGroupName: ${azurerm_resource_group.test.name}
  exampleFrontdoorProfile:
    type: azure:cdn:FrontdoorProfile
    properties:
      resourceGroupName: ${exampleResourceGroup.name}
      skuName: Standard_AzureFrontDoor
  exampleFrontdoorCustomDomain:
    type: azure:cdn:FrontdoorCustomDomain
    properties:
      cdnFrontdoorProfileId: ${exampleFrontdoorProfile.id}
      dnsZoneId: ${exampleZone.id}
      hostName: contoso.fabrikam.com
      tls:
        certificateType: ManagedCertificate
        minimumTlsVersion: TLS12

meta-arguments is because all of the resources for the Custom Domain need to be associated within Front Door before the CNAME record can be written to the domains DNS, else the CNAME validation will fail and Front Door will not enable traffic to the Domain.

using System.Collections.Generic;
using Pulumi;
using Azure = Pulumi.Azure;

return await Deployment.RunAsync(() => 
{
    var example = new Azure.Dns.CNameRecord("example", new()
    {
        ZoneName = azurerm_dns_zone.Example.Name,
        ResourceGroupName = azurerm_resource_group.Example.Name,
        Ttl = 3600,
        Record = azurerm_cdn_frontdoor_endpoint.Example.Host_name,
    }, new CustomResourceOptions
    {
        DependsOn = new[]
        {
            azurerm_cdn_frontdoor_route.Example,
            azurerm_cdn_frontdoor_security_policy.Example,
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/dns"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewCNameRecord(ctx, "example", &dns.CNameRecordArgs{
			ZoneName:          pulumi.Any(azurerm_dns_zone.Example.Name),
			ResourceGroupName: pulumi.Any(azurerm_resource_group.Example.Name),
			Ttl:               pulumi.Int(3600),
			Record:            pulumi.Any(azurerm_cdn_frontdoor_endpoint.Example.Host_name),
		}, pulumi.DependsOn([]pulumi.Resource{
			azurerm_cdn_frontdoor_route.Example,
			azurerm_cdn_frontdoor_security_policy.Example,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.dns.CNameRecord;
import com.pulumi.azure.dns.CNameRecordArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var example = new CNameRecord("example", CNameRecordArgs.builder()        
            .zoneName(azurerm_dns_zone.example().name())
            .resourceGroupName(azurerm_resource_group.example().name())
            .ttl(3600)
            .record(azurerm_cdn_frontdoor_endpoint.example().host_name())
            .build(), CustomResourceOptions.builder()
                .dependsOn(                
                    azurerm_cdn_frontdoor_route.example(),
                    azurerm_cdn_frontdoor_security_policy.example())
                .build());

    }
}
import pulumi
import pulumi_azure as azure

example = azure.dns.CNameRecord("example",
    zone_name=azurerm_dns_zone["example"]["name"],
    resource_group_name=azurerm_resource_group["example"]["name"],
    ttl=3600,
    record=azurerm_cdn_frontdoor_endpoint["example"]["host_name"],
    opts=pulumi.ResourceOptions(depends_on=[
            azurerm_cdn_frontdoor_route["example"],
            azurerm_cdn_frontdoor_security_policy["example"],
        ]))
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = new azure.dns.CNameRecord("example", {
    zoneName: azurerm_dns_zone.example.name,
    resourceGroupName: azurerm_resource_group.example.name,
    ttl: 3600,
    record: azurerm_cdn_frontdoor_endpoint.example.host_name,
}, {
    dependsOn: [
        azurerm_cdn_frontdoor_route.example,
        azurerm_cdn_frontdoor_security_policy.example,
    ],
});
resources:
  example:
    type: azure:dns:CNameRecord
    properties:
      zoneName: ${azurerm_dns_zone.example.name}
      resourceGroupName: ${azurerm_resource_group.example.name}
      ttl: 3600
      record: ${azurerm_cdn_frontdoor_endpoint.example.host_name}
    options:
      dependson:
        - ${azurerm_cdn_frontdoor_route.example}
        - ${azurerm_cdn_frontdoor_security_policy.example}

Create FrontdoorCustomDomain Resource

new FrontdoorCustomDomain(name: string, args: FrontdoorCustomDomainArgs, opts?: CustomResourceOptions);
@overload
def FrontdoorCustomDomain(resource_name: str,
                          opts: Optional[ResourceOptions] = None,
                          cdn_frontdoor_profile_id: Optional[str] = None,
                          dns_zone_id: Optional[str] = None,
                          host_name: Optional[str] = None,
                          name: Optional[str] = None,
                          tls: Optional[FrontdoorCustomDomainTlsArgs] = None)
@overload
def FrontdoorCustomDomain(resource_name: str,
                          args: FrontdoorCustomDomainArgs,
                          opts: Optional[ResourceOptions] = None)
func NewFrontdoorCustomDomain(ctx *Context, name string, args FrontdoorCustomDomainArgs, opts ...ResourceOption) (*FrontdoorCustomDomain, error)
public FrontdoorCustomDomain(string name, FrontdoorCustomDomainArgs args, CustomResourceOptions? opts = null)
public FrontdoorCustomDomain(String name, FrontdoorCustomDomainArgs args)
public FrontdoorCustomDomain(String name, FrontdoorCustomDomainArgs args, CustomResourceOptions options)
type: azure:cdn:FrontdoorCustomDomain
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args FrontdoorCustomDomainArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args FrontdoorCustomDomainArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args FrontdoorCustomDomainArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args FrontdoorCustomDomainArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args FrontdoorCustomDomainArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

FrontdoorCustomDomain Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The FrontdoorCustomDomain resource accepts the following input properties:

CdnFrontdoorProfileId string

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

HostName string

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

Tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

DnsZoneId string

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

Name string

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

CdnFrontdoorProfileId string

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

HostName string

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

Tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

DnsZoneId string

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

Name string

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

cdnFrontdoorProfileId String

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

hostName String

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

dnsZoneId String

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

name String

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

cdnFrontdoorProfileId string

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

hostName string

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

dnsZoneId string

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

name string

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

cdn_frontdoor_profile_id str

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

host_name str

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

dns_zone_id str

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

name str

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

cdnFrontdoorProfileId String

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

hostName String

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

tls Property Map

A tls block as defined below.

dnsZoneId String

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

name String

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

Outputs

All input properties are implicitly available as output properties. Additionally, the FrontdoorCustomDomain resource produces the following output properties:

ExpirationDate string

The date time that the token expires.

Id string

The provider-assigned unique ID for this managed resource.

ValidationToken string

Challenge used for DNS TXT record or file based validation.

ExpirationDate string

The date time that the token expires.

Id string

The provider-assigned unique ID for this managed resource.

ValidationToken string

Challenge used for DNS TXT record or file based validation.

expirationDate String

The date time that the token expires.

id String

The provider-assigned unique ID for this managed resource.

validationToken String

Challenge used for DNS TXT record or file based validation.

expirationDate string

The date time that the token expires.

id string

The provider-assigned unique ID for this managed resource.

validationToken string

Challenge used for DNS TXT record or file based validation.

expiration_date str

The date time that the token expires.

id str

The provider-assigned unique ID for this managed resource.

validation_token str

Challenge used for DNS TXT record or file based validation.

expirationDate String

The date time that the token expires.

id String

The provider-assigned unique ID for this managed resource.

validationToken String

Challenge used for DNS TXT record or file based validation.

Look up Existing FrontdoorCustomDomain Resource

Get an existing FrontdoorCustomDomain resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: FrontdoorCustomDomainState, opts?: CustomResourceOptions): FrontdoorCustomDomain
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        cdn_frontdoor_profile_id: Optional[str] = None,
        dns_zone_id: Optional[str] = None,
        expiration_date: Optional[str] = None,
        host_name: Optional[str] = None,
        name: Optional[str] = None,
        tls: Optional[FrontdoorCustomDomainTlsArgs] = None,
        validation_token: Optional[str] = None) -> FrontdoorCustomDomain
func GetFrontdoorCustomDomain(ctx *Context, name string, id IDInput, state *FrontdoorCustomDomainState, opts ...ResourceOption) (*FrontdoorCustomDomain, error)
public static FrontdoorCustomDomain Get(string name, Input<string> id, FrontdoorCustomDomainState? state, CustomResourceOptions? opts = null)
public static FrontdoorCustomDomain get(String name, Output<String> id, FrontdoorCustomDomainState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
CdnFrontdoorProfileId string

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

DnsZoneId string

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

ExpirationDate string

The date time that the token expires.

HostName string

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

Name string

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

Tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

ValidationToken string

Challenge used for DNS TXT record or file based validation.

CdnFrontdoorProfileId string

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

DnsZoneId string

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

ExpirationDate string

The date time that the token expires.

HostName string

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

Name string

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

Tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

ValidationToken string

Challenge used for DNS TXT record or file based validation.

cdnFrontdoorProfileId String

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

dnsZoneId String

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

expirationDate String

The date time that the token expires.

hostName String

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

name String

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

validationToken String

Challenge used for DNS TXT record or file based validation.

cdnFrontdoorProfileId string

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

dnsZoneId string

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

expirationDate string

The date time that the token expires.

hostName string

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

name string

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

validationToken string

Challenge used for DNS TXT record or file based validation.

cdn_frontdoor_profile_id str

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

dns_zone_id str

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

expiration_date str

The date time that the token expires.

host_name str

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

name str

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

tls FrontdoorCustomDomainTlsArgs

A tls block as defined below.

validation_token str

Challenge used for DNS TXT record or file based validation.

cdnFrontdoorProfileId String

The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created.

dnsZoneId String

The ID of the Azure DNS Zone which should be used for this Front Door Custom Domain. If you are using Azure to host your DNS domains, you must delegate the domain provider's domain name system (DNS) to an Azure DNS Zone. For more information, see Delegate a domain to Azure DNS. Otherwise, if you're using your own domain provider to handle your DNS, you must validate the Front Door Custom Domain by creating the DNS TXT records manually.

expirationDate String

The date time that the token expires.

hostName String

The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created.

name String

The name which should be used for this Front Door Custom Domain. Possible values must be between 2 and 260 characters in length, must begin with a letter or number, end with a letter or number and contain only letters, numbers and hyphens. Changing this forces a new Front Door Custom Domain to be created.

tls Property Map

A tls block as defined below.

validationToken String

Challenge used for DNS TXT record or file based validation.

Supporting Types

FrontdoorCustomDomainTls

CdnFrontdoorSecretId string

Resource ID of the Front Door Secret.

CertificateType string

Defines the source of the SSL certificate. Possible values include CustomerCertificate and ManagedCertificate. Defaults to ManagedCertificate.

MinimumTlsVersion string

TLS protocol version that will be used for Https. Possible values include TLS10 and TLS12. Defaults to TLS12.

CdnFrontdoorSecretId string

Resource ID of the Front Door Secret.

CertificateType string

Defines the source of the SSL certificate. Possible values include CustomerCertificate and ManagedCertificate. Defaults to ManagedCertificate.

MinimumTlsVersion string

TLS protocol version that will be used for Https. Possible values include TLS10 and TLS12. Defaults to TLS12.

cdnFrontdoorSecretId String

Resource ID of the Front Door Secret.

certificateType String

Defines the source of the SSL certificate. Possible values include CustomerCertificate and ManagedCertificate. Defaults to ManagedCertificate.

minimumTlsVersion String

TLS protocol version that will be used for Https. Possible values include TLS10 and TLS12. Defaults to TLS12.

cdnFrontdoorSecretId string

Resource ID of the Front Door Secret.

certificateType string

Defines the source of the SSL certificate. Possible values include CustomerCertificate and ManagedCertificate. Defaults to ManagedCertificate.

minimumTlsVersion string

TLS protocol version that will be used for Https. Possible values include TLS10 and TLS12. Defaults to TLS12.

cdn_frontdoor_secret_id str

Resource ID of the Front Door Secret.

certificate_type str

Defines the source of the SSL certificate. Possible values include CustomerCertificate and ManagedCertificate. Defaults to ManagedCertificate.

minimum_tls_version str

TLS protocol version that will be used for Https. Possible values include TLS10 and TLS12. Defaults to TLS12.

cdnFrontdoorSecretId String

Resource ID of the Front Door Secret.

certificateType String

Defines the source of the SSL certificate. Possible values include CustomerCertificate and ManagedCertificate. Defaults to ManagedCertificate.

minimumTlsVersion String

TLS protocol version that will be used for Https. Possible values include TLS10 and TLS12. Defaults to TLS12.

Import

Front Door Custom Domains can be imported using the resource id, e.g.

 $ pulumi import azure:cdn/frontdoorCustomDomain:FrontdoorCustomDomain example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.Cdn/profiles/profile1/customDomains/customDomain1

Package Details

Repository
https://github.com/pulumi/pulumi-azure
License
Apache-2.0
Notes

This Pulumi package is based on the azurerm Terraform Provider.