Vytvoření vazby azure Database for PostgreSQL k vaší aplikaci v Azure Spring Apps
Poznámka:
Azure Spring Apps je nový název služby Azure Spring Cloud. Přestože má služba nový název, na některých místech uvidíte starý název, protože pracujeme na aktualizaci prostředků, jako jsou snímky obrazovky, videa a diagramy.
Tento článek se vztahuje na: ✔️ Java ✔️ C#
Tento článek se vztahuje na: ✔️ Basic/Standard ✔️ Enterprise
Pomocí Azure Spring Apps můžete svázat vybrané služby Azure s vašimi aplikacemi automaticky a nemusíte aplikaci Spring Boot konfigurovat ručně. V tomto článku se dozvíte, jak vytvořit vazbu aplikace na instanci Azure Database for PostgreSQL.
V tomto článku obsahujeme dvě metody ověřování: ověřování Microsoft Entra a ověřování PostgreSQL. Karta Bez hesla zobrazuje ověřování Microsoft Entra a karta Heslo zobrazuje ověřování PostgreSQL.
Ověřování Microsoft Entra je mechanismus pro připojení ke službě Azure Database for PostgreSQL pomocí identit definovaných v MICROSOFT Entra ID. Pomocí ověřování Microsoft Entra můžete spravovat identity uživatelů databáze a další služby Microsoft v centrálním umístění, což zjednodušuje správu oprávnění.
Ověřování PostgreSQL používá účty uložené v PostgreSQL. Pokud se rozhodnete používat hesla jako přihlašovací údaje pro účty, uloží se tyto přihlašovací údaje do tabulky uživatelů. Vzhledem k tomu, že tato hesla jsou uložená v PostgreSQL, musíte spravovat rotaci hesel sami.
Požadavky
- Aplikace nasazená do Azure Spring Apps Další informace najdete v tématu Rychlý start: Nasazení první aplikace do Azure Spring Apps.
- Instance flexibilního serveru Azure Database for PostgreSQL.
- Azure CLI verze 2.45.0 nebo vyšší
Příprava projektu
Pomocí následujících kroků připravte projekt.
Do souboru pom.xml projektu přidejte následující závislost:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-cloud-azure-starter-jdbc-postgresql</artifactId> </dependency>
V souboru application.properties odeberte všechny
spring.datasource.*
vlastnosti.Aktualizujte aktuální aplikaci spuštěním
az spring app deploy
příkazu , nebo vytvořte nové nasazení pro tuto změnu spuštěnímaz spring app deployment create
.
Vytvoření vazby aplikace k instanci Azure Database for PostgreSQL
Poznámka:
Při vytváření připojení nezapomeňte vybrat pouze jeden z následujících přístupů. Pokud jste už vytvořili tabulky s jedním připojením, ostatní uživatelé nemají přístup k tabulkám nebo je upravovat. Když vyzkoušíte jiný přístup, aplikace vyvolá chyby, jako je například "Oprávnění odepřeno". Pokud chcete tento problém vyřešit, připojte se k nové databázi nebo odstraňte a znovu vytvořte existující databázi.
Poznámka:
Ve výchozím nastavení se Připojení or služby vytvářejí na úrovni aplikace. Pokud chcete přepsat připojení, můžete v nasazeních znovu vytvořit další připojení.
Nainstalujte rozšíření service Připojení or bez hesla pro Azure CLI:
az extension add --name serviceconnector-passwordless --upgrade
Nakonfigurujte Azure Spring Apps pro připojení k databázi PostgreSQL pomocí spravované identity přiřazené systémem pomocí
az spring connection create
příkazu.az spring connection create postgres-flexible \ --resource-group $AZ_SPRING_APPS_RESOURCE_GROUP \ --service $AZ_SPRING_APPS_SERVICE_INSTANCE_NAME \ --app $APP_NAME \ --deployment $DEPLOYMENT_NAME \ --target-resource-group $POSTGRES_RESOURCE_GROUP \ --server $POSTGRES_SERVER_NAME \ --database $DATABASE_NAME \ --system-identity
Požadavky
- Aplikace nasazená do Azure Spring Apps Další informace najdete v tématu Rychlý start: Nasazení první aplikace do Azure Spring Apps.
- Instance jednoúčelového serveru Azure Database for PostgreSQL.
- Azure CLI verze 2.45.0 nebo vyšší
Příprava projektu
Pomocí následujících kroků připravte projekt.
Do souboru pom.xml projektu přidejte následující závislost:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-cloud-azure-starter-jdbc-postgresql</artifactId> </dependency>
V souboru application.properties odeberte všechny
spring.datasource.*
vlastnosti.Aktualizujte aktuální aplikaci spuštěním
az spring app deploy
příkazu , nebo vytvořte nové nasazení pro tuto změnu spuštěnímaz spring app deployment create
.
Vytvoření vazby aplikace k instanci Azure Database for PostgreSQL
Poznámka:
Service Připojení ors are created at the deployment level. Takže pokud se vytvoří jiné nasazení, budete muset znovu vytvořit připojení.
Nainstalujte rozšíření service Připojení or bez hesla pro Azure CLI:
az extension add --name serviceconnector-passwordless --upgrade
Nakonfigurujte Azure Spring Apps pro připojení k databázi PostgreSQL pomocí spravované identity přiřazené systémem pomocí
az spring connection create
příkazu.az spring connection create postgres \ --resource-group $AZ_SPRING_APPS_RESOURCE_GROUP \ --service $AZ_SPRING_APPS_SERVICE_INSTANCE_NAME \ --app $APP_NAME \ --deployment $DEPLOYMENT_NAME \ --target-resource-group $POSTGRES_RESOURCE_GROUP \ --server $POSTGRES_SERVER_NAME \ --database $DATABASE_NAME \ --system-identity
Další kroky
V tomto článku jste zjistili, jak vytvořit vazbu aplikace v Azure Spring Apps na instanci Azure Database for PostgreSQL. Další informace o vazbách služeb k aplikaci najdete v tématu Vytvoření vazby databáze Azure Cosmos DB na aplikaci v Azure Spring Apps.