Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Importante
A partir de 28 de julho de 2025, as alterações nos Certificados Gerenciados do Serviço de Aplicativo (ASMC) afetarão a forma como os certificados são emitidos e renovados em determinados cenários. Embora a maioria dos clientes não precise tomar medidas, recomendamos que leia nossa postagem detalhada no blog ASMC para obter mais informações.
Este artigo mostra como fornecer segurança para o domínio personalizado em seu aplicativo do Serviço de Aplicativo do Azure ou aplicativo de função criando uma associação de certificado. Quando terminar, poderá aceder à aplicação do Serviço de Aplicativos no endpoint do seu nome de DNS personalizado. Um exemplo é https://www.contoso.com.
Pré-requisitos
- Aumente a escala do seu aplicativo do Serviço de Aplicativo para um dos níveis de preços suportados: Básico, Standard ou Premium.
- Mapeie um nome de domínio para seu aplicativo ou compre-o e configure-o no Azure.
Adicionar a ligação
No portal Azure:
No painel esquerdo, selecione Serviços de Aplicações><app-name>.
No painel esquerdo do seu aplicativo, selecione Domínios personalizados.
Ao lado do domínio personalizado, selecione Adicionar vinculação.
Se seu aplicativo já tiver um certificado para o domínio personalizado selecionado, você poderá selecioná-lo em Certificado. Caso contrário, você deve adicionar um certificado usando uma das seleções em Origem:
- Criar Certificado Gerenciado do Serviço de Aplicativo: Permita que o Serviço de Aplicativo crie um certificado gerenciado para o domínio selecionado. Esta opção é a mais fácil. Para obter mais informações, consulte Criar um certificado gerenciado gratuito.
- Importar Certificado do Serviço de Aplicativo: em Certificado do Serviço de Aplicativo, selecione o certificado do Serviço de Aplicativo que você comprou para o domínio selecionado.
- Carregar certificado (.pfx): Siga o fluxo de trabalho em Carregar um certificado privado para carregar um certificado PFX (arquivo de troca de informações pessoais) da sua máquina local e especifique a senha do certificado.
- Importar do Cofre da Chave: escolha Selecionar certificado do cofre da chave e selecione o certificado na caixa de diálogo.
Em Tipo TLS/SSL, selecione SNI SSL ou SSL baseado em IP:
- SNI SSL: Você pode adicionar várias associações SSL (Secure Sockets Layer) de Indicação de Nome de Servidor (SNI). Esta opção permite vários certificados TLS/SSL para ajudar a proteger vários domínios no mesmo endereço IP. A maioria dos navegadores modernos (incluindo Microsoft Edge, Chrome, Firefox e Opera) suporta SNI. (Para obter mais informações, consulte Indicação de nome do servidor.)
- SSL baseado em IP: Você pode adicionar apenas uma ligação IP SSL. Esta opção permite apenas um certificado TLS/SSL para ajudar a proteger um endereço IP público dedicado. Depois de configurar a ligação, siga as etapas em Remapear registros para SSL baseado em IP. O SSL baseado em IP é suportado apenas na camada Standard ou superior.
Ao adicionar um novo certificado, selecione Validar para validar o novo certificado.
Selecione Adicionar.
Após a conclusão da operação, o estado TLS/SSL do domínio personalizado é alterado para Protegido.
Um estado Protegido em domínios personalizados significa que um certificado fornece segurança. O Serviço de Aplicativo não verifica se o certificado está autoassinado ou expirou, o que também pode fazer com que os navegadores mostrem um erro ou aviso.
Reconfigurar registos para SSL baseado em IP
Esta etapa é necessária apenas para SSL baseado em IP. Para uma ligação SNI SSL, pule para Testar HTTPS.
Há potencialmente duas alterações que você precisa fazer:
Por padrão, seu aplicativo usa um endereço IP público compartilhado. Quando você vincula um certificado com IP SSL, o Serviço de Aplicativo cria um novo endereço IP dedicado para seu aplicativo. Se você mapeou um registro A para seu aplicativo, atualize seu registro de domínio com esse novo endereço IP dedicado.
A página de domínio personalizado do seu aplicativo é atualizada com o novo endereço IP dedicado. Copie este endereço IP e, em seguida, remapeie o registo A para este novo endereço IP.
Se tiver uma ligação SNI SSL para
<app-name>.azurewebsites.net, remapeie qualquer CNAME para apontar para em vez disso. (Adicione o prefixosni.)
Testar HTTPS
Navegue para https://<your.custom.domain> em vários navegadores para verificar se o seu aplicativo aparece.
O código do seu aplicativo pode inspecionar o protocolo através do x-appservice-proto cabeçalho. O cabeçalho tem um valor de http ou https.
Se seu aplicativo fornecer erros de validação de certificado, você provavelmente está usando um certificado autoassinado. Se esse não for o caso, você provavelmente deixou de fora os certificados intermediários quando exportou o certificado para o arquivo .pfx.
Perguntas mais frequentes
Como faço para garantir que o endereço IP do aplicativo não seja alterado quando faço alterações na vinculação do certificado?
Seu endereço IP de entrada pode ser alterado quando você exclui uma ligação, mesmo que essa associação seja IP SSL. Esse comportamento é especialmente importante quando você renova um certificado que já está em uma ligação IP SSL. Para evitar uma alteração no endereço IP do aplicativo, siga estas etapas:
- Carregar o novo certificado.
- Associe o novo certificado ao domínio personalizado desejado sem excluir o antigo. Esta ação substitui o enlace em vez de remover o antigo.
- Eliminar o certificado antigo.
Posso desativar o redirecionamento forçado de HTTP para HTTPS?
Por padrão, o Serviço de Aplicativo força um redirecionamento de solicitações HTTP para HTTPS. Para desativar esse comportamento, consulte Definir configurações gerais.
Como posso alterar as versões mínimas de TLS para o aplicativo?
Seu aplicativo permite o TLS 1.2 por padrão. Os padrões da indústria, como PCI DSS, recomendam esse nível TLS. Para impor diferentes versões do TLS, consulte Definir configurações gerais.
Como lidar com a rescisão de TLS no Serviço de Aplicativo?
No Serviço de Aplicativo, a terminação TLS acontece nos balanceadores de carga de rede, portanto, todas as solicitações HTTPS chegam ao seu aplicativo como solicitações HTTP não criptografadas. Se a lógica do seu aplicativo precisar verificar se as solicitações do usuário estão criptografadas, inspecione o X-Forwarded-Proto cabeçalho.
Guias de configuração específicos do idioma, como o guia de configuração do Linux Node.js, mostram como detetar uma sessão HTTPS no código do aplicativo.
Automatizar com scripts
CLI do Azure
Vincular um certificado TLS/SSL personalizado a um aplicativo Web
PowerShell
$fqdn="<Replace with your custom domain name>"
$pfxPath="<Replace with path to your .PFX file>"
$pfxPassword="<Replace with your .PFX password>"
$webappname="mywebapp$(Get-Random)"
$location="West Europe"
# Create a resource group.
New-AzResourceGroup -Name $webappname -Location $location
# Create an App Service plan in Free tier.
New-AzAppServicePlan -Name $webappname -Location $location `
-ResourceGroupName $webappname -Tier Free
# Create a web app.
$webapp = New-AzWebApp -Name $webappname -Location $location -AppServicePlan $webappname `
-ResourceGroupName $webappname
Write-Host "Sign in to your domain provider's website and configure the following records:"
Write-Host "A CNAME record that maps $fqdn to $webappname.azurewebsites.net"
Write-Host "A TXT record that maps asuid.$fqdn to the domain verification ID $($webapp.CustomDomainVerificationId)"
Read-Host "Press [Enter] key when ready ..."
# Before continuing, go to your DNS configuration UI for your custom domain and follow the
# instructions at https://aka.ms/appservicecustomdns to configure a CNAME record for the
# hostname "www" and point it your web app's default domain name.
# Upgrade App Service plan to Basic tier (minimum required by custom SSL certificates)
Set-AzAppServicePlan -Name $webappname -ResourceGroupName $webappname `
-Tier Basic
# Add a custom domain name to the web app.
Set-AzWebApp -Name $webappname -ResourceGroupName $webappname `
-HostNames @($fqdn,"$webappname.azurewebsites.net")
# Upload and bind the SSL certificate to the web app.
New-AzWebAppSSLBinding -WebAppName $webappname -ResourceGroupName $webappname -Name $fqdn `
-CertificateFilePath $pfxPath -CertificatePassword $pfxPassword -SslState SniEnabled