Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Note
Plany Podstawowy, Standardowy i Enterprise weszły w okres wycofania z dniem 17 marca 2025 r. Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu usługi Azure Spring Apps.
Ten artykuł dotyczy:✅ Java ✅ C#
Ten artykuł dotyczy:✅ Podstawowa/Standardowa ✅ Enterprise
Usługa Azure Spring Apps umożliwia automatyczne wiązanie wybranych usług platformy Azure z aplikacjami zamiast ręcznego konfigurowania aplikacji Spring Boot. W tym artykule pokazano, jak zbindować aplikację z instancją bazy danych Azure PostgreSQL.
W tym artykule uwzględniliśmy dwie metody uwierzytelniania: uwierzytelnianie firmy Microsoft Entra i uwierzytelnianie PostgreSQL. Karta Bez hasła zawiera uwierzytelnianie firmy Microsoft Entra, a karta Hasło zawiera uwierzytelnianie PostgreSQL.
Uwierzytelnianie Microsoft Entra to mechanizm łączenia się z usługą Azure Database for PostgreSQL przy użyciu tożsamości zdefiniowanych w Microsoft Entra ID. Dzięki uwierzytelnianiu firmy Microsoft Entra można zarządzać tożsamościami użytkowników bazy danych i innymi usługami firmy Microsoft w centralnej lokalizacji, co upraszcza zarządzanie uprawnieniami.
Uwierzytelnianie postgreSQL używa kont przechowywanych w usłudze PostgreSQL. Jeśli zdecydujesz się używać haseł jako poświadczeń dla kont, te poświadczenia są przechowywane w tabeli użytkowników. Ponieważ te hasła są przechowywane w usłudze PostgreSQL, musisz samodzielnie zarządzać rotacją haseł.
Prerequisites
- Aplikacja wdrożona w usłudze Azure Spring Apps. Aby uzyskać więcej informacji, zobacz Szybki start: wdrażanie pierwszej aplikacji w usłudze Azure Spring Apps.
- Instancja elastycznego serwera Azure Database dla PostgreSQL.
- Interfejs wiersza polecenia platformy Azure w wersji 2.45.0 lub nowszej.
Przygotowywanie projektu
Aby przygotować projekt, wykonaj następujące czynności.
W pliku pom.xml projektu dodaj następującą zależność:
<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>W pliku application.properties usuń wszelkie
spring.datasource.*właściwości.Zaktualizuj bieżącą aplikację, uruchamiając
az spring app deploypolecenie , lub utwórz nowe wdrożenie dla tej zmiany, uruchamiając polecenieaz spring app deployment create.
Podłącz swoją aplikację do instancji Azure Database for PostgreSQL
Note
Pamiętaj, aby wybrać tylko jedno z poniższych podejść do utworzenia połączenia. Jeśli już utworzono tabele z jednym połączeniem, inni użytkownicy nie będą mogli uzyskać dostępu do tabel ani zmodyfikować ich. Podczas próby zastosowania innego podejścia aplikacja będzie zgłaszać błędy, takie jak "Odmowa uprawnień". Aby rozwiązać ten problem, połącz się z nową bazą danych lub usuń ją i utwórz ponownie istniejącą.
Note
Domyślnie łączniki usługi są tworzone na poziomie aplikacji. Aby zastąpić połączenia, możesz ponownie utworzyć inne połączenia we wdrożeniach.
Zainstaluj rozszerzenie bez hasła łącznika usługi dla interfejsu wiersza polecenia platformy Azure:
az extension add --name serviceconnector-passwordless --upgradeSkonfiguruj usługę Azure Spring Apps, aby nawiązać połączenie z bazą danych PostgreSQL przy użyciu przypisanej przez system tożsamości zarządzanej
az spring connection createprzy użyciu polecenia .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
Dalsze kroki
W tym artykule nauczyłeś się, jak powiązać aplikację w usłudze Azure Spring Apps z wystąpieniem Azure Database for PostgreSQL. Aby dowiedzieć się więcej o wiązaniu usług z aplikacją, zobacz Wiązanie bazy danych usługi Azure Cosmos DB z aplikacją w usłudze Azure Spring Apps.