Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Ambiente do Serviço de Aplicativo é uma implantação do Serviço de Aplicativo do Azure que é executado em sua rede virtual do Azure. Pode ser implementado através de um ponto de extremidade de aplicação acessível pela internet ou um ponto de extremidade de aplicação na rede virtual. Se você implantar o Ambiente do Serviço de Aplicativo com um ponto de extremidade acessível pela Internet, essa implantação será chamada de Ambiente do Serviço de Aplicativo Externo. Se você implantar o Ambiente do Serviço de Aplicativo com um ponto de extremidade em sua rede virtual, essa implantação será chamada de Ambiente do Serviço de Aplicativo ILB. Você pode saber mais sobre o Ambiente do Serviço de Aplicativo ILB no documento Criar e usar um Ambiente do Serviço de Aplicativo ILB.
Certificados de candidatura
Os aplicativos hospedados em um Ambiente do Serviço de Aplicativo oferecem suporte aos seguintes recursos de certificado centrados no aplicativo, que também estão disponíveis no Serviço de Aplicativo multilocatário. Para obter requisitos e instruções para carregar e gerenciar esses certificados, consulte Adicionar um certificado TLS/SSL no Serviço de Aplicativo do Azure.
Depois de adicionar o certificado ao seu aplicativo do Serviço de Aplicativo ou aplicativo de função, você pode proteger um nome de domínio personalizado com ele ou usá-lo no código do aplicativo.
Limitações
Os certificados gerenciados do Serviço de Aplicativo não são suportados em aplicativos hospedados em um Ambiente do Serviço de Aplicativo.
Definições do TLS
Você pode definir a configuração TLS em um nível de aplicativo.
Certificados raiz para cenários de cliente privado
Quando seu aplicativo atua como um cliente que se conecta a serviços protegidos com certificados privados da Autoridade de Certificação (CA), você precisa adicionar certificados raiz para estabelecer confiança. O Ambiente do Serviço de Aplicativo v3 fornece dois métodos para gerenciar certificados raiz:
- API de certificado raiz (recomendado): gerenciamento em todo o ambiente para todos os aplicativos
- Certificado de cliente privado: configuração por aplicativo usando Configurações do aplicativo
Escolher o método certo
| Método | Scope | Utilizar quando | Limitações |
|---|---|---|---|
| API de certificado raiz | Todos os aplicativos no Ambiente do Serviço de Aplicativo | - Você gerencia vários aplicativos que precisam dos mesmos certificados raiz - Você quer gerenciamento centralizado de certificados - Você está implantando novos ambientes com Infraestrutura como Código |
- Requer parar e iniciar aplicativos existentes para pegar novos certificados - Requer ferramentas API/CLI/IaC (não disponível no portal do Azure no momento) |
| Certificado de cliente privado | Aplicativos em um único plano do Serviço de Aplicativo | - Você precisa de certificados para apenas alguns aplicativos - Você prefere a configuração baseada em portal - Aplicativos diferentes precisam de certificados raiz diferentes |
- Somente aplicativos de código do Windows - Deve configurar cada plano do Serviço de Aplicativo separadamente - Certificados não disponíveis fora do código do aplicativo (não podem ser usados para autenticação de registro de contêiner ou validação TLS front-end) |
A recomendação geral é usar a API de certificado raiz para novas implantações e ao gerenciar certificados em vários aplicativos. Ele fornece melhor escalabilidade, suporte à automação e funciona para aplicativos Windows e Linux.
API de certificado raiz
A API de Certificado Raiz permite adicionar programaticamente certificados raiz ao seu Ambiente do Serviço de Aplicativo v3, disponibilizando-os para todos os aplicativos durante a inicialização. Os certificados raiz são certificados públicos que identificam uma autoridade de certificação (CA) raiz e são essenciais para estabelecer confiança em comunicações seguras. Ao adicionar certificados raiz ao seu Ambiente do Serviço de Aplicativo, todos os aplicativos hospedados nesse ambiente os têm instalados em seu armazenamento raiz, garantindo uma comunicação segura com serviços internos ou APIs que usam certificados emitidos por CAs privadas ou empresariais.
Esse recurso está disponível para aplicativos baseados em Windows e Linux no Ambiente do Serviço de Aplicativo v3. Os certificados raiz adicionados por meio dessa API são injetados automaticamente no armazenamento confiável de aplicativos na inicialização, eliminando a necessidade de configurações por aplicativo e simplificando o gerenciamento do ciclo de vida do certificado.
Considerações importantes
- Os certificados podem ser adicionados a um Ambiente do Serviço de Aplicativo usando a API REST, a CLI do Azure, os modelos ARM, o Bíceps ou o Terraform.
- Se você adicionar um certificado a um Ambiente do Serviço de Aplicativo com aplicativos existentes ou em execução, deverá parar e iniciar cada aplicativo para que o repositório de certificados seja atualizado com o novo certificado raiz. Recomenda-se adicionar todos os certificados antes de criar seus aplicativos para eliminar a necessidade de parar e iniciar aplicativos individualmente.
- Parar e iniciar operações é diferente de reiniciar seu aplicativo. Você deve usar os comandos dedicados parar e iniciar disponíveis no portal do Azure, CLI do Azure ou API REST.
- Iniciar e parar aplicativos causa interrupções temporárias enquanto os aplicativos são interrompidos.
- Se você tiver vários aplicativos e quiser automatizar esse processo, poderá usar a CLI do Azure ou a API REST.
- Durante o processo de adição de certificado, você deve fornecer todo o blob de certificado na solicitação. Não é possível carregar um ficheiro .cer diretamente.
Adicionar um certificado raiz
Para adicionar um certificado raiz ao seu Ambiente do Serviço de Aplicativo, use um dos seguintes métodos:
- API REST
- Azure CLI
- Modelo ARM
- Bíceps
- Terraform
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{aseName}/publicCertificates/{certificateName}?api-version=2024-04-01
Content-Type: application/json
{
"location": "{location}",
"properties": {
"blob": "{raw certificate blob}",
"isRoot": true
}
}
Substitua os seguintes espaços reservados:
-
{subscriptionId}: Sua ID de assinatura do Azure -
{resourceGroupName}: O grupo de recursos que contém o seu Ambiente de Serviço de Aplicações -
{aseName}: O nome do seu Ambiente do Serviço de Aplicações -
{certificateName}: Um nome para o recurso de certificado -
{location}: A região do Azure onde seu Ambiente do Serviço de Aplicativo está implantado -
{raw certificate blob}: O blob de certificado bruto do seu certificado raiz
Remover um certificado raiz
Para remover um certificado raiz do seu Ambiente do Serviço de Apps:
- API REST
- Azure CLI
DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{aseName}/publicCertificates/{certificateName}?api-version=2024-04-01
Recuperar um certificado específico
Para obter um certificado raiz específico no seu Ambiente de Serviço de Aplicativo:
- API REST
- Azure CLI
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{aseName}/publicCertificates/{certificateName}?api-version=2024-04-01
Recuperar todos os certificados públicos
Para recuperar todos os certificados públicos do seu Ambiente do App Service:
- API REST
- Azure CLI
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{aseName}/publicCertificates?api-version=2024-04-01
Parar e iniciar aplicações
Depois de adicionar um certificado raiz a um Ambiente do Serviço de Aplicativo com aplicativos existentes, você deve parar e iniciar cada aplicativo para atualizar o repositório de certificados.
- portal do Azure
- API REST
- Azure CLI
- Navegue até seu aplicativo no portal do Azure.
- Selecione Parar na página de visão geral.
- Aguarde até que a aplicação pare completamente.
- Selecione Iniciar para reiniciar o aplicativo.
Certificado de cliente privado (configuração por aplicativo)
Nota
Para a maioria dos cenários, use a API de certificado raiz em vez desse método. A API de Certificado Raiz fornece gerenciamento de certificados em todo o ambiente para aplicativos Windows e Linux, enquanto esse método é limitado a aplicativos de código do Windows dentro de um único plano do Serviço de Aplicativo.
Se você precisar configurar certificados raiz apenas para aplicativos específicos ou se preferir usar o portal do Azure, poderá usar o método de certificado de cliente privado. Essa abordagem carrega certificados para aplicativos individuais e os disponibiliza para aplicativos no mesmo plano do Serviço de Aplicativo.
Importante
Os certificados de cliente privado só são suportados a partir de código personalizado em aplicações de código do Windows. Não há suporte para certificados de cliente privado fora do aplicativo. Isso limita o uso em cenários como extrair a imagem do contêiner do aplicativo de um registro usando um certificado privado e validação TLS através dos servidores front-end usando um certificado privado.
Siga estas etapas para carregar o certificado (arquivo .cer ) para seu aplicativo no Ambiente do Serviço de Aplicativo. O arquivo .cer pode ser exportado do seu certificado. Para fins de teste, há um exemplo do PowerShell no final para gerar um certificado autoassinado temporário:
Vá para o aplicativo que precisa do certificado no portal do Azure
Vá para Certificados no aplicativo. Selecione Certificado de Chave Pública (.cer). Selecione Adicionar certificado. Forneça um nome. Procure e selecione seu arquivo .cer . Selecione carregar.
Copie a impressão digital.
Vá para Configurações>Configurações da Aplicação. Crie uma configuração de aplicativo WEBSITE_LOAD_ROOT_CERTIFICATES com a impressão digital como o valor. Se você tiver vários certificados, poderá colocá-los na mesma configuração separados por vírgulas e sem espaço em branco como
84EC242A4EC7957817B8E48913E50953552DAFA6,6A5C65DC9247F762FE17BF8D4906E04FE6B31819
O certificado está disponível para todos os aplicativos no mesmo plano do Serviço de Aplicativo que o aplicativo, que definiu essa configuração, mas todos os aplicativos que dependem do certificado de CA privada devem ter a Configuração do Aplicativo configurada para evitar problemas de tempo.
Se você precisar que ele esteja disponível para aplicativos em um plano diferente do Serviço de Aplicativo, precisará repetir a operação de configuração do aplicativo para os aplicativos desse plano do Serviço de Aplicativo. Para verificar se o certificado está definido, vá para o console do Kudu e emita o seguinte comando no console de depuração do PowerShell:
dir Cert:\LocalMachine\Root
Para executar testes, você pode criar um certificado autoassinado e gerar um arquivo .cer com o seguinte PowerShell:
$certificate = New-SelfSignedCertificate -CertStoreLocation "Cert:\LocalMachine\My" -DnsName "*.internal.contoso.com","*.scm.internal.contoso.com"
$certThumbprint = "Cert:\LocalMachine\My\" + $certificate.Thumbprint
$fileName = "exportedcert.cer"
Export-Certificate -Cert $certThumbprint -FilePath $fileName -Type CERT
Certificado de servidor privado (ligação TLS/SSL)
Nota
Esta seção aborda certificados de servidor para associações TLS/SSL, que é diferente dos certificados raiz discutidos anteriormente. Os certificados de servidor são usados para proteger o domínio personalizado do seu aplicativo com HTTPS, enquanto os certificados raiz estabelecem confiança para conexões de cliente de saída.
Se seu aplicativo atuar como um servidor em um modelo cliente-servidor, seja atrás de um proxy reverso ou diretamente com um cliente privado e você estiver usando um certificado de CA privado, será necessário carregar o certificado do servidor (arquivo .pfx ) com a cadeia de certificados completa para seu aplicativo e vincular o certificado ao domínio personalizado. Como a infraestrutura é dedicada ao seu Ambiente do Serviço de Aplicações, a cadeia completa de certificados é adicionada ao armazenamento de confiança dos servidores. Você só precisa carregar o certificado uma vez para usá-lo com aplicativos que estão no mesmo Ambiente do Serviço de Aplicativo.
Nota
Se você carregou seu certificado antes de 1º de outubro de 2023, precisará recarregar e vincular novamente o certificado para que toda a cadeia de certificados seja adicionada aos servidores.
Siga o tutorial de domínio personalizado seguro com TLS/SSL para carregar/vincular seu certificado de CA privado enraizado ao aplicativo em seu Ambiente do Serviço de Aplicativo.
Próximos passos
- Informações sobre como usar certificados no código do aplicativo