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.
Nota
Os planos Basic, Standarde Enterprise entraram em um período de aposentadoria em 17 de março de 2025. Para obter mais informações, consulte o anúncio de aposentadoria do Azure Spring Apps.
Este artigo aplica-se a:✅ Java ✅ C#
Este artigo aplica-se a:✅ Basic/Standard ✅ Enterprise
Este artigo mostra como criar uma identidade gerenciada para um aplicativo implantado no Azure Spring Apps e usá-lo para acessar o Banco de Dados SQL do Azure.
O Banco de Dados SQL do Azure é o serviço de banco de dados relacional, escalável e inteligente criado para a nuvem. Está sempre atualizado, com recursos automatizados e alimentados por IA que otimizam o desempenho e a durabilidade. A computação sem servidor e as opções de armazenamento do Hyperscale dimensionam os recursos automaticamente a pedido, pelo que se pode concentrar em criar aplicações novas sem se preocupar com a gestão do tamanho do armazenamento ou com os recursos.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- Azure CLI versão 2.45.0 ou superior.
- Siga o tutorial JPA do Spring Data para provisionar um Banco de Dados SQL do Azure e fazê-lo funcionar com um aplicativo Java localmente.
- Siga o tutorial de identidade gerenciada atribuída pelo sistema do Azure Spring Apps para provisionar um aplicativo no Azure Spring Apps com identidade gerenciada habilitada.
Conectar-se ao Banco de Dados SQL do Azure com uma identidade gerenciada
Você pode conectar seu aplicativo a um Banco de Dados SQL do Azure com uma identidade gerenciada seguindo etapas manuais ou usando o Service Connector.
Conceder permissão à identidade gerenciada
Conecte-se ao seu servidor SQL e execute a seguinte consulta SQL:
CREATE USER [<managed-identity-name>] FROM EXTERNAL PROVIDER;
ALTER ROLE db_datareader ADD MEMBER [<managed-identity-name>];
ALTER ROLE db_datawriter ADD MEMBER [<managed-identity-name>];
ALTER ROLE db_ddladmin ADD MEMBER [<managed-identity-name>];
GO
O valor do espaço reservado <managed-identity-name> segue a regra <service-instance-name>/apps/<app-name>, por exemplo: myspringcloud/apps/sqldemo. Você também pode usar o seguinte comando para consultar o nome da identidade gerenciada com a CLI do Azure:
az ad sp show --id <identity-object-ID> --query displayName
Configure seu aplicativo Java para usar uma identidade gerenciada
Abra o arquivo src/main/resources/application.properties e adicione Authentication=ActiveDirectoryMSI; no final da spring.datasource.url linha, conforme mostrado no exemplo a seguir. Certifique-se de usar o valor correto para a variável $AZ_DATABASE_NAME.
spring.datasource.url=jdbc:sqlserver://$AZ_DATABASE_NAME.database.windows.net:1433;database=demo;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;Authentication=ActiveDirectoryMSI;
Criar e implantar o aplicativo no Azure Spring Apps
Recrie o aplicativo e implante-o no Azure Spring Apps provisionado no segundo ponto em Pré-requisitos. Agora você tem um aplicativo Spring Boot autenticado por uma identidade gerenciada que usa JPA para armazenar e recuperar dados de um Banco de Dados SQL do Azure no Azure Spring Apps.
Próximos passos
- Como acessar o blob de armazenamento com identidade gerenciada no Azure Spring Apps
- Como habilitar a identidade gerenciada atribuída pelo sistema para aplicativos no Azure Spring Apps
- O que são identidades geridas para recursos do Azure?
- Autenticar aplicativos do Azure Spring com o Key Vault em ações do GitHub