Usar certificados TLS/SSL no aplicativo no Azure Spring Apps
Observação
Azure Spring Apps é o novo nome do serviço Azure Spring Cloud. Embora o serviço tenha um novo nome, você verá o nome antigo em alguns locais por um tempo enquanto trabalhamos para atualizar ativos como capturas de tela, vídeos e diagramas.
Este artigo se aplica ao: ✔️ nível Básico/Standard ✔️ nível Enterprise
Este artigo mostra como usar certificados públicos no Azure Spring Apps para seu aplicativo. O aplicativo pode atuar como um cliente e acessar um serviço externo que requer autenticação por certificado ou talvez precise executar tarefas criptográficas.
Ao permitir que o Azure Spring Apps gerencie os certificados TLS/SSL, você poderá manter os certificados e o código do aplicativo separadamente para proteger os dados confidenciais. O código do aplicativo poderá acessar os certificados públicos que você adicionar à instância do Azure Spring Apps.
Pré-requisitos
- Um aplicativo implantado no Azure Spring Apps. Consulte Início Rápido: Implantar o primeiro aplicativo no Azure Spring Apps, ou use um aplicativo existente.
- Um arquivo de certificado com a extensão .crt, .cer, .pem ou .der ou uma instância implantada do Azure Key Vault com um certificado privado.
Importar um certificado
Você pode escolher importar o certificado para a instância do Azure Spring Apps do Key Vault ou usar um arquivo de certificado local.
Importar um certificado do Key Vault
É necessário conceder acesso ao Azure Spring Apps ao seu cofre de chaves antes de importar o certificado usando estas etapas:
Entre no portal do Azure.
Selecione Cofres de chaves e, em seguida, selecione o Key Vault do qual você vai importar o certificado.
No painel de navegação esquerdo, selecione Políticas de acesso e selecione Criar.
Selecione Permissões de certificado, em seguida, selecione Obter e Listar.
Em Entidade de segurança, selecione seu Provedor de Recursos do Azure Spring Cloud.
Selecione Examinar + Criar e Criar.
Após conceder o acesso ao cofre de chaves, você pode importar seu certificado seguindo estas etapas:
Vá para a instância do serviço.
No painel de navegação à esquerda da sua instância, selecione Configurações de TLS/SSL.
Selecione Importar Certificado do Key Vault na seção Certificados de Chave Pública.
Selecione seu cofre de chaves na seção Cofres de chaves, selecione seu certificado na seção Certificado e escolha Selecionar.
Insira um valor para Nome do certificado, selecione Habilitar sincronização automática se necessário e, em seguida, selecione Aplicar. Para mais informações, veja a seção Certificado de sincronização automática do artigo Mapear um domínio personalizado existente para Aplicativos Spring do Azure.
Depois de importar o certificado com êxito, você o verá na lista de Certificados de Chave Pública.
Observação
As instâncias do Azure Key Vault e do Azure Spring Apps devem estar no mesmo locatário.
Importar um arquivo de certificado local
Você pode importar um arquivo de certificado armazenado localmente seguindo estas etapas:
- Vá para a instância do serviço.
- No painel de navegação à esquerda da sua instância, selecione Configurações de TLS/SSL.
- Selecione Carregar certificado público na seção Certificados de Chave Pública.
Depois de importar o certificado com êxito, você o verá na lista de Certificados de Chave Pública.
Carregar um certificado
Para carregar um certificado no seu aplicativo no Azure Spring Apps, comece com estas etapas:
- Acesse a instância do aplicativo.
- No painel de navegação esquerdo do seu aplicativo, selecione Gerenciamento de certificados.
- Selecione Adicionar certificado para escolher os certificados acessíveis para o aplicativo.
Carregar um certificado do código
Os certificados carregados estão disponíveis na pasta /etc/azure-spring-cloud/certs/public. Use o seguinte código Java para carregar um certificado público em um aplicativo no Azure Spring Apps.
CertificateFactory factory = CertificateFactory.getInstance("X509");
FileInputStream is = new FileInputStream("/etc/azure-spring-cloud/certs/public/<certificate name>");
X509Certificate cert = (X509Certificate) factory.generateCertificate(is);
// use the loaded certificate
Carregar um certificado no repositório confiável
Para um aplicativo Java, você pode escolher Carregar no repositório confiável para o certificado selecionado. O certificado é adicionado automaticamente ao TrustStores padrão do Java para autenticar um servidor na autenticação SSL.
O log do seu aplicativo a seguir mostra que o certificado foi carregado com êxito.
Load certificate from specific path. alias = <certificate alias>, thumbprint = <certificate thumbprint>, file = <certificate name>