Sufixo de domínio personalizado para Ambientes do Serviço de Aplicativo

Um Ambiente do Serviço de Aplicativo é um recurso do Serviço de Aplicativo do Azure que fornece um ambiente totalmente isolado e dedicado a executar os aplicativos do Serviço de Aplicativo com segurança em grande escala. As configurações de DNS para o sufixo de domínio padrão do Ambiente do Serviço de Aplicativo não restringem os aplicativos para serem acessíveis apenas por esses nomes. O sufixo de domínio personalizado é um recurso de ILB (balanceador de carga interno) do Ambiente do Serviço de Aplicativo que permite a você usar seu próprio sufixo de domínio para acessar os aplicativos no Ambiente do Serviço de Aplicativo.

Se você não tiver um Ambiente do Serviço de Aplicativo, consulte Como criar um Ambiente do Serviço de Aplicativo v3.

Observação

Este artigo aborda os recursos, benefícios e casos de uso do Ambiente do Serviço de Aplicativo v3, que é usado com os planos do Serviço do Aplicativo Isolado v2.

O sufixo de domínio personalizado define um domínio raiz usado pelo Ambiente do Serviço de Aplicativo. A variação pública do Serviço de Aplicativo do Azure, o domínio de raiz padrão para todos os aplicativos Web, é azurewebsites.net. Para o ILB dos Ambientes do Serviço de Aplicativo, o domínio raiz padrão é appserviceenvironment.net. No entanto, como um ILB do Ambiente do Serviço de Aplicativo é interno para a rede virtual de um cliente, os clientes podem usar um domínio raiz além do padrão que faça sentido para uso na rede virtual interna de uma empresa. Por exemplo, uma hipotética Contoso Corporation pode usar um domínio raiz padrão de internal.contoso.com para aplicativos que devem ser resolvidos e acessíveis apenas na rede virtual da Contoso. Um aplicativo nesta rede virtual pode ser acessado acessando APP-NAME.internal.contoso.com.

O sufixo de domínio personalizado é para o Ambiente do Serviço de Aplicativo. Esse recurso é diferente de uma associação de domínio personalizada em um Serviço de Aplicativo. Para obter informações sobre associações de domínio personalizado, consulte Mapear um nome DNS personalizado existente para o Serviço de Aplicativo do Azure.

Se o certificado usado para o sufixo de domínio personalizado contiver uma entrada SAN (Nome Alternativo da Entidade) para *.scm.CUSTOM-DOMAIN, o site do SCM também estará acessível a partir de APP-NAME.scm.CUSTOM-DOMAIN. Você só pode acessar o scm por um domínio personalizado usando a autenticação básica. O logon único só é possível com o domínio raiz padrão.

Ao contrário das versões anteriores, os pontos de extremidade do FTPS para os Serviços de Aplicativos no Ambiente do Serviço de Aplicativo v3 só podem ser acessados usando o sufixo de domínio padrão.

A conexão com o ponto de extremidade do sufixo de domínio personalizado precisa usar a SNI (Indicação de Nome do Servidor) para conexões baseadas em TLS.

Pré-requisitos

Identidade gerenciada

Uma identidade gerenciada é usada para autenticação no Azure Key Vault, quando o certificado SSL/TLS é armazenado. Se você ainda não tiver uma identidade gerenciada associada ao Ambiente do Serviço de Aplicativo, será necessário configurar uma.

Você pode usar uma identidade gerenciada atribuída pelo sistema ou pelo usuário. Para criar uma identidade atribuída pelo usuário, consulte gerenciar identidades gerenciadas atribuídas pelo usuário. Caso queira usar uma identidade gerenciada atribuída pelo sistema e ainda não tiver uma atribuída ao Ambiente do Serviço de Aplicativo, a experiência do portal de sufixo de domínio personalizado orientará você durante o processo de criação. Como alternativa, é possível acessar a página Identidade para o Ambiente do Serviço de Aplicativo e configurar e atribuir as identidades gerenciadas lá.

Para habilitar uma identidade gerenciada atribuída pelo sistema, defina o Status como Ativado.

Captura de tela de um exemplo de identidade gerenciada pelo sistema para o Ambiente do Serviço de Aplicativo.

Para atribuir uma identidade gerenciada atribuída pelo usuário, selecione "Adicionar e localizar a identidade gerenciada" a ser usada.

Captura de tela de um exemplo de identidade gerenciada pelo usuário para o Ambiente do Serviço de Aplicativo.

Depois de atribuir a identidade gerenciada ao seu Ambiente do Serviço de Aplicativo, verifique se a identidade gerenciada tem permissões suficientes para o Azure Key Vault. Você pode usar uma política de acesso ao cofre ou um controle de acesso baseado em função do Azure.

Caso use uma política de acesso ao cofre, a identidade gerenciada precisará, no mínimo, da permissão de segredos "Get" para o cofre de chaves.

Captura de tela de um exemplo de política de acesso ao cofre de chaves para identidade gerenciada.

Caso opte por usar o controle de acesso baseado em função do Azure para gerenciar o acesso ao cofre de chaves, será necessário fornecer a sua identidade gerenciada, no mínimo, a função "Usuário de Segredos do Key Vault".

Captura de tela de um exemplo de controle de acesso baseado em função ao cofre de chaves para identidade gerenciada.

Certificado

O certificado para o sufixo de domínio personalizado deve ser armazenado em um Azure Key Vault. O certificado deve ser carregado no formato .PFX. Os certificados no formato .PEM não têm suporte neste momento. O Ambiente do Serviço de Aplicativo usa a identidade gerenciada que você selecionou para obter o certificado. O cofre de chaves pode ser acessado publicamente ou por meio de um ponto de extremidade privado acessível na sub-rede na qual o Ambiente do Serviço de Aplicativo é implantado. No caso de acesso público, proteja seu cofre de chaves para aceitar apenas o tráfego dos endereços IP de saída do Ambiente do Serviço de Aplicativo.

Captura de tela de um exemplo de página de sistema de rede para que o cofre de chaves possa permitir o recurso de sufixo de domínio personalizado.

Seu certificado deve ser um certificado curinga para o nome de domínio personalizado selecionado. Por exemplo, internal.contoso.com precisaria de um certificado cobrindo *.internal.contoso.com. Se o certificado usado pelo sufixo de domínio personalizado contiver uma entrada SAN (Nome Alternativo de Assunto) para o SCM, por exemplo *.scm.internal.contoso.com, o site do SCM também estará disponível usando o sufixo de domínio personalizado.

Se alternar o certificado no Azure Key Vault, o Ambiente do Serviço de Aplicativo receberá a alteração em até 24 horas.

Usar o portal do Azure para configurar o sufixo de domínio personalizado

  1. No portal do Azure, navegue até a página Sufixo de domínio personalizado para o Ambiente do Serviço de Aplicativo.
  2. insira o nome de domínio personalizado.
  3. Selecione a identidade gerenciada que você definiu para o Ambiente do Serviço de Aplicativo. Você pode usar uma identidade gerenciada atribuída pelo sistema ou pelo usuário. Você poderá configurar sua identidade gerenciada se ainda não tiver feito isso. Configure a identidade gerenciada diretamente da página de sufixo de domínio personalizado usando a opção "Adicionar identidade" na caixa de seleção de identidade gerenciada. Captura de tela de um painel de configuração para selecionar e atualizar a identidade gerenciada para o Ambiente do Serviço de Aplicativo.
  4. Selecione o certificado para o sufixo de domínio personalizado.
  5. Selecione "Salvar" no início da página. Para visualizar as atualizações de configuração mais recentes, atualize a página. Captura de tela de uma visão geral da experiência do portal do sufixo de domínio personalizado.
  6. Leva alguns minutos para que a configuração do sufixo de domínio personalizado seja definida. Verifique o status selecionando "Atualizar" na parte superior da página. A faixa é atualizada com o progresso mais recente. Após a conclusão, a faixa informará que o sufixo de domínio personalizado está configurado. Captura de tela de um exemplo da página de configuração do sufixo de domínio personalizado bem-sucedida.

Usar o Azure Resource Manager para configurar o sufixo de domínio personalizado

Para configurar um sufixo de domínio personalizado para o Ambiente do Serviço de Aplicativo usando um modelo do Azure Resource Manager, é necessário incluir as propriedades abaixo. Verifique se você atende os pré-requisitos e se sua identidade gerenciada e o certificado estão acessíveis e têm as permissões apropriadas para o Azure Key Vault.

É necessário configurar a identidade gerenciada e garantir que ela exista antes de atribuí-la ao modelo. Para obter mais informações sobre identidades gerenciadas, confira a visão geral de identidade gerenciada.

Usar uma identidade gerenciada atribuída pelo usuário

"resources": [
{
    "apiVersion": "2022-03-01",
    "type": "Microsoft.Web/hostingEnvironments",
    "name": ...,
    "location": ...,
    "identity": {
        "type": "UserAssigned",
        "userAssignedIdentities": {
            "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asev3-cdns-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ase-cdns-managed-identity"
        }
    },
    "properties": {
        "customDnsSuffixConfiguration": {
            "dnsSuffix": "antares-test.net",
            "certificateUrl": "https://kv-sample-key-vault.vault.azure.net/secrets/wildcard-antares-test-net",
            "keyVaultReferenceIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asev3-cdns-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ase-cdns-managed-identity"
        },
        "internalLoadBalancingMode": "Web, Publishing",
        etc...
    }
}

Usar uma identidade gerenciada atribuída pelo sistema

"resources": [
{
    "apiVersion": "2022-03-01",
    "type": "Microsoft.Web/hostingEnvironments",
    "name": ...,
    "location": ...,
    "identity": {
        "type": "SystemAssigned"
    }
    "properties": {
        "customDnsSuffixConfiguration": {
            "dnsSuffix": "antares-test.net",
            "certificateUrl": "https://kv-sample-key-vault.vault.azure.net/secrets/wildcard-antares-test-net",
            "keyVaultReferenceIdentity": "systemassigned"
        },
        "internalLoadBalancingMode": "Web, Publishing",
        etc...
    }
}

Usar o Azure Resource Explorer para configurar o sufixo de domínio personalizado

Como alternativa, é possível atualizar o Ambiente do Serviço de Aplicativo usando o Azure Resource Explorer.

  1. No Gerenciador de Recursos, acesse o nó para o Ambiente do Serviço de Aplicativo (subscriptions>{sua assinatura}>resourceGroups>{seu grupo de recursos}>providers>Microsoft.Web>hostingEnvironments). Em seguida, selecione o Ambiente do Serviço de Aplicativo específico que você deseja atualizar.
  2. Selecione Leitura/gravação na barra de ferramentas superior para permitir a edição interativa no Gerenciador de Recursos.
  3. Selecione o botão Editar para tornar o modelo do ARM editável.
  4. Role até o final do painel à direita. O atributo customDnsSuffixConfiguration está na parte inferior.
  5. Insira seus valores para dnsSuffix, certificateUrl e keyVaultReferenceIdentity.
  6. Navegue até o atributo identity e insira os detalhes associados à identidade gerenciada que você está usando.
  7. Selecione o botão PUT localizado na parte superior para confirmar a alteração no Ambiente do Serviço de Aplicativo.
  8. O provisioningState sob customDnsSuffixConfiguration fornece um status na atualização de configuração.

Configuração de DNS

Para acessar seus aplicativos no Ambiente do Serviço de Aplicativo usando o sufixo de domínio personalizado, configure seu próprio servidor DNS ou configure o DNS em uma zona DNS privada do Azure para seu domínio personalizado.

Se quiser usar seu próprio servidor DNS, adicione os registros a seguir:

  1. Crie uma zona para seu domínio personalizado.
  2. Crie um registro A na zona indicada com * para o endereço IP de entrada usado pelo Ambiente do Serviço de Aplicativo.
  3. Crie um registro A na zona indicada com @ para o endereço IP de entrada usado pelo Ambiente do Serviço de Aplicativo.
  4. Opcionalmente, crie uma zona para o subdomínio do SCM com um registro * A que aponta para o endereço IP de entrada usado pelo seu Ambiente do Serviço de Aplicativo

Para configurar o DNS em zonas privadas do DNS do Azure:

  1. Crie uma zona privada DNS do Azure nomeada para o domínio personalizado. No exemplo a seguir, o domínio personalizado é internal.contoso.com.
  2. Crie um registro A na zona indicada com * para o endereço IP de entrada usado pelo Ambiente do Serviço de Aplicativo.
  3. Crie um registro A na zona indicada com @ para o endereço IP de entrada usado pelo Ambiente do Serviço de Aplicativo. Captura de tela de um exemplo de configuração do DNS para o sufixo de domínio personalizado.
  4. Vincule a zona privada DNS do Azure à rede virtual do Ambiente do Serviço de Aplicativo. Captura de tela de um exemplo de link de rede virtual para a zona DNS privada.
  5. Opcionalmente, crie um registro A na zona indicada com *.scm para o endereço IP de entrada usado pelo Ambiente do Serviço de Aplicativo.

Para obter mais informações sobre como configurar o DNS para seu domínio, consulte Usar um Ambiente do Serviço de Aplicativo.

Observação

Além de configurar o DNS para o seu sufixo de domínio personalizado, você também deve considerar configurar o DNS para o sufixo de domínio padrão para garantir que todos os recursos do Serviço de Aplicativo funcionem conforme o esperado.

Acessar seus aplicativos

Após configurar o sufixo de domínio personalizado e o DNS para seu Ambiente do Serviço de Aplicativo, você pode acessar a página Domínios personalizados para um dos aplicativos do Serviço de Aplicativo em seu Ambiente do Serviço de Aplicativo e confirmar a adição do domínio personalizado atribuído para o aplicativo.

Captura de tela de um exemplo de domínio personalizado para um aplicativo criado pelo recurso de sufixo de domínio personalizado do Ambiente do Serviço de Aplicativo.

Os aplicativos em ILB do Ambiente do Serviço de Aplicativo podem ser acessados com segurança por HTTPS pelo domínio personalizado que você configurou ou pelo domínio padrão appserviceenvironment.net como na imagem anterior. A capacidade de acessar seus aplicativos usando o domínio padrão do Ambiente do Serviço de Aplicativo e o domínio personalizado é um recurso exclusivo que só tem suporte no Ambiente do Serviço de Aplicativo v3.

No entanto, assim como os aplicativos em execução no serviço público multilocatário, você também pode configurar nomes de host personalizados para aplicativos individuais e, em seguida, configurar associações de certificado TLS/SSL para aplicativos individuais exclusivas de SNI.

Solução de problemas

Se as permissões ou configurações de rede para sua identidade gerenciada, cofre de chaves ou Ambiente do Serviço de Aplicativo não estiverem definidas adequadamente, não será possível configurar um sufixo de domínio personalizado e você receberá um erro semelhante ao exemplo mostrado na captura de tela. Examine os pré-requisitos para garantir que você configurou as permissões necessárias. Você também visualiza uma mensagem de erro semelhante se a plataforma do Serviço de Aplicativo detectar que seu certificado está degradado ou expirado.

Captura de tela de um exemplo de mensagem de erro de sufixo de domínio personalizado.

Próximas etapas