Použití spravované identity k připojení služby Azure SQL Database k aplikaci nasazené do Azure Spring Apps

Poznámka:

Plány Basic, Standard a Enterprise budou od poloviny března 2025 vyřazeny ze 3letého období vyřazení. Doporučujeme přejít na Azure Container Apps. Další informace najdete v oznámení o vyřazení Azure Spring Apps.

Od 30. září 2024 bude od 30. září 2024 zastaralý plán s úplným vypnutím po šesti měsících. Doporučujeme přejít na Azure Container Apps. Další informace najdete v tématu Migrace spotřeby Azure Spring Apps Úrovně Standard a vyhrazeného plánu do Azure Container Apps.

Tento článek se vztahuje na: ✔️ Java ✔️ C#

Tento článek se vztahuje na: ✔️ Basic/Standard ✔️ Enterprise

V tomto článku se dozvíte, jak vytvořit spravovanou identitu pro aplikaci nasazenou do Azure Spring Apps a jak ji použít pro přístup ke službě Azure SQL Database.

Azure SQL Database je inteligentní, škálovatelná relační databázová služba vytvořená pro cloud. Vždy je aktuální díky funkcím využívajícím AI a automatizovaným funkcím, které optimalizují výkon a odolnost. Možnosti bezserverového výpočetního prostředí a úložiště Hyperscale automaticky škálují prostředky na vyžádání, abyste se mohli soustředit na vytváření nových aplikací, aniž byste se museli starat o velikost úložiště nebo správu prostředků.

Požadavky

Připojení ke službě Azure SQL Database pomocí spravované identity

Aplikaci můžete připojit ke službě Azure SQL Database pomocí spravované identity pomocí ručních kroků nebo pomocí konektoru služby.

Udělení oprávnění spravované identitě

Připojte se k sql serveru a spusťte následující dotaz 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

Hodnota zástupného symbolu <managed-identity-name> se řídí pravidlem <service-instance-name>/apps/<app-name>, například: myspringcloud/apps/sqldemo. K dotazování názvu spravované identity pomocí Azure CLI můžete použít také následující příkaz:

az ad sp show --id <identity-object-ID> --query displayName

Konfigurace aplikace v Javě pro použití spravované identity

Otevřete soubor src/main/resources/application.properties a pak na konec spring.datasource.url řádku přidejteAuthentication=ActiveDirectoryMSI;, jak je znázorněno v následujícím příkladu. Nezapomeňte použít správnou hodnotu pro proměnnou $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;

Sestavení a nasazení aplikace do Azure Spring Apps

Znovu sestavte aplikaci a nasaďte ji do Služby Azure Spring Apps zřízené v druhém odrážkovém bodě v části Požadavky. Teď máte aplikaci Spring Boot ověřenou spravovanou identitou, která používá JPA k ukládání a načítání dat z Azure SQL Database v Azure Spring Apps.

Další kroky