Visão geral sobre certificados para os Serviços de Nuvem do Azure (clássico)
Importante
Os Serviços de Nuvem (clássicos) agora se encontram preteridos para todos os clientes a partir de 1º de setembro de 2024. Todas as implantações em execução existentes serão interrompidas e desligadas pela Microsoft e os dados serão perdidos de forma permanente a partir de outubro de 2024. As novas implantações devem usar o novo modelo de implantação baseado no Azure Resource Manager Serviços de Nuvem do Azure (suporte estendido) .
Os certificados são usados no Azure para serviços de nuvem (certificados de serviço) e para a autenticação com o gerenciamento de API (certificados de gerenciamento). Esse artigo fornece uma visão geral de ambos os tipos de certificado, como criá-los e implantá-los no Azure.
Os certificados usados no Azure são certificados x.509 v3. Eles podem autoassinar ou outro certificado confiável pode assiná-los. Um certificado é autoassinado quando seu criador o assina. Os certificados autoassinados não são confiáveis por padrão, mas a maioria dos navegadores pode ignorar esse problema. Você só deve usar certificados autoassinados ao desenvolver e testar seus serviços de nuvem.
Os certificados utilizados pelo Azure podem conter uma chave pública. Certificados têm uma impressão digital, que é um meio de identificá-los de maneira inequívoca. Essa impressão digital é usada no arquivo de configuração do Azure para identificar qual certificado um serviço de nuvem deve usar.
Observação
O Azure Cloud Services não aceita o certificado criptografado por AES256-SHA256.
O que são certificados de serviço?
Certificados de serviço são anexados aos serviços de nuvem e possibilitam que a comunicação feita com e por meio deles seja segura. Por exemplo, se você implantou uma função web, convém fornecer um certificado que pode autenticar um ponto de extremidade HTTPS exposto. Certificados de serviço, definidos em sua definição de serviço, são implantados automaticamente na máquina virtual que está executando uma instância de sua função.
Você pode carregar certificados de serviço para o Azure acessando o portal do Azure ou utilizando o modelo de implantação clássico. Os certificados de serviço são associados um serviço de nuvem específico. O arquivo de definição de serviço os atribui a uma implantação.
Os certificados de serviço podem ser gerenciados separadamente dos seus serviços e diferentes indivíduos podem gerenciá-los. Por exemplo, um desenvolvedor pode carregar um pacote de serviços que se refira a um certificado que um gestor de TI carregou anteriormente para o Azure. Um gerente de TI pode gerenciar e renovar esse certificado alterando a configuração do serviço sem precisar carregar um novo pacote de serviço. A atualização sem um novo pacote de serviço é possível porque o nome lógico, o nome do repositório e o local do certificado estão no arquivo de definição de serviço, enquanto que a impressão digital do certificado está especificada no arquivo de configuração de serviço. Para atualizar o certificado, é necessário apenas carregar um novo certificado e alterar o valor da impressão digital no arquivo de configuração de serviço.
Observação
O artigo Perguntas frequentes sobre os Serviços de Nuvem – Configuração e Gerenciamento tem algumas informações úteis sobre certificados.
O que são certificados de gerenciamento?
Os certificados de gerenciamento permitem que você autentique com o modelo de implantação clássico. Muitos programas e ferramentas (como o Visual Studio ou o SDK do Azure) usam esses certificados para automatizar a configuração e a implantação de diversos serviços do Azure. Esses certificados não estão relacionados a serviços em nuvem.
Aviso
Portanto, tenha cuidado! Esses tipos de certificados permitem que qualquer pessoa que os utilize para autenticação gerencie a assinatura à qual eles estão associados.
Limitações
Há um limite de 100 certificados de gerenciamento por assinatura. Há também um limite de 100 certificados de gerenciamento para todas as assinaturas com um ID de usuário de administrador de serviço específico. Se o ID de usuário do administrador da conta já tiver sido usado para adicionar 100 certificados de gerenciamento e houver necessidade de mais certificados, você poderá adicionar um coadministrador para adicionar mais certificados.
Além disso, os certificados de gestão não podem ser utilizados com subscrições de Fornecedor de Soluções em Nuvem (CSP), uma vez que as subscrições CSP suportam apenas o modelo de implantação do Azure Resource Manager e os certificados de gestão utilizam o modelo de implementação clássico. Referência Azure Resource Manager vs modelo de implantação clássico e Compreendendo Autenticação com o SDK do Azure para .NET para obter mais informações sobre suas opções para assinaturas do CSP.
Criar um Novo certificado autoassinado
Você pode usar qualquer ferramenta disponível para criar um certificado autoassinado, desde que ela esteja de acordo com estas configurações:
Um certificado X.509.
Contém uma chave pública.
Criado para troca de chaves (arquivo. pfx).
O nome de assunto deve corresponder ao domínio usado para acessar o serviço de nuvem.
Você não pode adquirir um certificado TLS/SSL para o domínio cloudapp.net (ou para qualquer um relacionado ao Azure); o nome de assunto do certificado deve corresponder ao nome do domínio personalizado usado para acessar o aplicativo. Por exemplo, contoso.net e não contoso.cloudapp.net.
Mínimo de criptografia de 2048 bits.
Apenas Certificado de Serviço: o certificado do cliente deve residir no repositório de certificados Pessoal .
Há duas maneiras fáceis de criar um certificado no Windows, com o utilitário makecert.exe
ou o IIS.
Makecert.exe
Esse utilitário foi desativado e não está mais documentado aqui. Para obter mais informações, veja esse artigo da Microsoft Developer Network (MSDN).
PowerShell
$cert = New-SelfSignedCertificate -DnsName yourdomain.cloudapp.net -CertStoreLocation "cert:\LocalMachine\My" -KeyLength 2048 -KeySpec "KeyExchange"
$password = ConvertTo-SecureString -String "your-password" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath ".\my-cert-file.pfx" -Password $password
Observação
Se você quiser usar o certificado com um endereço IP em vez de um domínio, use o endereço IP no parâmetro - DnsName.
Se você quiser usar este certificado com o portal de gerenciamento, exporte-o para um arquivo .cer :
Export-Certificate -Type CERT -Cert $cert -FilePath .\my-cert-file.cer
Serviços de Informações da Internet (IIS)
Existem muitas páginas na Internet que abordam como criar certificados com IIS, como Quando usar um certificado autoassinado do IIS.
Linux
Etapas rápidas: Criar e usar um par de chaves pública-privada SSH para VMs Linux no Azure descreve como criar certificados com SSH.
Próximas etapas
Carregar seu certificado de serviço no portal do Azure.
Carregar um certificado de gerenciamento de API no portal do Azure.