Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Anteckning
Planerna Basic, Standardoch Enterprise gick in i en pensionsperiod den 17 mars 2025. Mer information finns i meddelandet om azure Spring Apps-pensionering.
Planen Standard consumption och den dedikerade gick in i en pensionsperiod den 30 september 2024, med en fullständig avstängning i slutet av mars 2025. För ytterligare information, se Migrera Azure Spring Apps Standard-förbrukning och dedikerad plan till Azure Container Apps.
Den här artikeln gäller för:✅ Java ✅ C#
Den här artikeln gäller för:✅ Basic/Standard ✅ Enterprise
Den här artikeln visar hur du skapar en hanterad identitet för en app som distribueras till Azure Spring Apps och använder den för att få åtkomst till Azure SQL Database.
Azure SQL Database är den intelligenta, skalbara relationsdatabastjänsten som skapats för molnet. Den är alltid uppdaterad med AI-baserade och automatiserade funktioner som optimerar prestanda och hållbarhet. Serverlösa beräknings- och skalningsalternativ för lagring skalar automatiskt resurser på begäran, så att du kan fokusera på att skapa nya program utan att behöva bekymra dig om lagringsstorlek eller resurshantering.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- Azure CLI version 2.45.0 eller senare.
- Följ självstudiekursen om Spring Data JPA för att etablera en Azure SQL Database och få den att fungera med en Java-app lokalt.
- Följ självstudien " handledning om systemtilldelad hanterad identitet i Azure Spring Apps" för att etablera en app i Azure Spring Apps med hanterad identitet aktiverad.
Ansluta till Azure SQL Database med en hanterad identitet
Du kan ansluta ditt program till en Azure SQL Database med en hanterad identitet genom att följa manuella steg eller använda Service Connector.
Bevilja behörighet till den hanterade identiteten
Anslut till SQL-servern och kör följande SQL-fråga:
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
Värdet för <managed-identity-name>
platshållaren följer regeln <service-instance-name>/apps/<app-name>
, till exempel: myspringcloud/apps/sqldemo
. Du kan också använda följande kommando för att fråga det hanterade identitetsnamnet med Azure CLI:
az ad sp show --id <identity-object-ID> --query displayName
Konfigurera din Java-app så att den använder en hanterad identitet
Öppna filen src/main/resources/application.properties och lägg sedan till Authentication=ActiveDirectoryMSI;
i slutet av spring.datasource.url
raden, enligt följande exempel. Se till att använda rätt värde för variabeln $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;
Skapa och distribuera appen till Azure Spring Apps
Återskapa appen och distribuera den till Azure Spring Apps som tillhandahålls i den andra punkten under Förkrav. Nu har du ett Spring Boot-program autentiserat av en hanterad identitet som använder JPA för att lagra och hämta data från en Azure SQL Database i Azure Spring Apps.