Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk bemutatja, hogyan helyezhet üzembe Java Spring Boot-alkalmazást a Microsoft Entra-fiók által az Azure Container Appsbe való bejelentkezéssel.
Ez a cikk feltételezi, hogy az alábbi cikkek egyikét csak a Helyi futtatás lapon fejezte be, és most az Azure-ban szeretné üzembe helyezni. Ezek az utasítások ugyanazok, mint az alábbi cikkek üzembe helyezése az Azure-ban lapon:
- Java Spring Boot-alkalmazások védelme a Microsoft Entra ID használatával
- Java Spring Boot-alkalmazások védelme az Azure Active Directory B2C használatával
- A Java Spring Boot-alkalmazások engedélyezése a felhasználók bejelentkezéséhez és a Microsoft Graph eléréséhez
- Java Spring Boot-alkalmazások védelme szerepkörök és szerepkör-jogcímek használatával
- Java Spring Boot-alkalmazások védelme csoportok és csoportjogcímek használatával
Előfeltételek
- Egy Azure-fiók. Ha még nincs előfizetése, hozzon létre egy ingyenes fiókot. A folytatáshoz szüksége van az Azure-előfizetés
ContributorvagyOwnerengedélyére. További információ: Azure-szerepkörök hozzárendelése a Azure Portal. - Az Azure CLI.
- Az Azure Container Apps CLI-bővítmény, verzió
0.3.47vagy újabb. A legújabb verzió telepítéséhez használja aaz extension add --name containerapp --upgrade --allow-previewparancsot. - A Java Development Kit 17-es vagy újabb verziója.
- Maven.
A Spring projekt előkészítése
A projekt előkészítéséhez kövesse az alábbi lépéseket:
A projekt létrehozásához használja a következő Maven-parancsot :
mvn clean verifyFuttassa helyileg a mintaprojektet az alábbi paranccsal:
mvn spring-boot:run
Beállítás
Ha a parancssori felületről szeretne bejelentkezni az Azure-ba, futtassa a következő parancsot, és kövesse az utasításokat a hitelesítési folyamat befejezéséhez.
az login
A parancssori felület legújabb verziójának futtatásához futtassa a frissítési parancsot.
az upgrade
Ezután telepítse vagy frissítse az Azure Container Apps bővítményt a parancssori felülethez.
Ha hibaüzenetet kap a hiányzó paraméterekről, amikor parancsokat futtat az containerapp az Azure CLI-ben, győződjön meg arról, hogy telepítve van az Azure Container Apps bővítmény legújabb verziója.
az extension add --name containerapp --upgrade
Feljegyzés
2024 májusától kezdődően az Azure CLI-bővítmények alapértelmezés szerint nem engedélyezik az előzetes verziójú funkciókat. A Container Apps előzetes verziójú funkcióinak eléréséhez telepítse a Container Apps bővítményt a következővel --allow-preview true: .
az extension add --name containerapp --upgrade --allow-preview true
Az aktuális bővítmény vagy modul telepítése után regisztrálja a névtereket és Microsoft.OperationalInsights a Microsoft.App névtereket.
Feljegyzés
Az Azure Container Apps-erőforrások át lettek migrálva a Microsoft.Web névtérből a Microsoft.App névtérbe. További részletekért tekintse meg a Névtér 2022 . márciusi migrálását a Microsoft.Web-ből a Microsoft.App.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
Az Azure Container Apps-környezet létrehozása
Most, hogy az Azure CLI beállítása befejeződött, meghatározhatja a jelen cikkben használt környezeti változókat.
Adja meg a következő változókat a bash-rendszerhéjban.
export RESOURCE_GROUP="ms-identity-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-ms-identity-containerapps"
export API_NAME="ms-identity-api"
export JAR_FILE_PATH_AND_NAME="./target/ms-identity-spring-boot-webapp-0.0.1-SNAPSHOT.jar"
Hozzon létre egy erőforráscsoportot.
az group create \
--name $RESOURCE_GROUP \
--location $LOCATION \
Hozzon létre egy környezetet egy automatikusan létrehozott Log Analytics-munkaterülettel.
az containerapp env create \
--name $ENVIRONMENT \
--resource-group $RESOURCE_GROUP \
--location $LOCATION
A tárolóalkalmazás-környezet alapértelmezett tartományának megjelenítése. Jegyezze fel ezt a tartományt a későbbi szakaszokban való használathoz.
az containerapp env show \
--name $ENVIRONMENT \
--resource-group $RESOURCE_GROUP \
--query properties.defaultDomain
Az alkalmazás előkészítése az üzembe helyezéshez
Amikor üzembe helyezi az alkalmazást az Azure Container Appsben, az átirányítási URL-cím megváltozik az Azure Container Appsben üzembe helyezett alkalmazáspéldány átirányítási URL-címére. A következő lépésekkel módosíthatja ezeket a beállításokat a application.yml fájlban:
Lépjen az alkalmazás src\main\resources\application.yml fájljára, és módosítsa a telepített alkalmazás tartománynevére az
post-logout-redirect-urialábbi példában látható módon. Mindenképpen cserélje le<API_NAME>a<default-domain-of-container-app-environment>tényleges értékeket. Ha például az előző lépésben az Azure Container App-környezet alapértelmezett tartománya ésms-identity-apiaz alkalmazás neve szerepel, akkor az értékhez kell használniapost-logout-redirect-urihttps://ms-identity-api.<default-domain>.post-logout-redirect-uri: https://<API_NAME>.<default-domain-of-container-app-environment>A fájl mentése után használja az alábbi parancsot az alkalmazás újraépítéséhez:
mvn clean package
Fontos
Az alkalmazás application.yml fájlja jelenleg az ügyfél titkos kódjának értékét tartalmazza a client-secret paraméterben. Ez az érték nem ajánlott ebben a fájlban tartani. Kockázatot is vállalhat, ha a fájlt egy Git-adattárba véglegesíti. Az ajánlott megközelítésért lásd : Titkos kódok kezelése az Azure Container Appsben.
A Microsoft Entra ID alkalmazásregisztráció frissítése
Mivel az átirányítási URI megváltozik az Azure Container Appsben üzembe helyezett alkalmazásra, az átirányítási URI-t is módosítania kell a Microsoft Entra ID-alkalmazásregisztrációjában. A módosítás végrehajtásához kövesse az alábbi lépéseket:
Lépjen a Microsoft Identitásplatform fejlesztőknek Alkalmazásregisztrációk lapra.
A keresőmező használatával keresse meg az alkalmazásregisztrációt – például
java-servlet-webapp-authentication.Nyissa meg az alkalmazásregisztrációt a nevének kiválasztásával.
Válassza a Hitelesítés lehetőséget a menüben.
A Webes - átirányítási URI-k szakaszban válassza az URI hozzáadása lehetőséget.
Töltse ki az alkalmazás URI-ját, hozzáfűzve
/login/oauth2/code/példáulhttps://<containerapp-name>.<default domain of container app environment>/login/oauth2/code/.Válassza a Mentés lehetőséget.
Az alkalmazás üzembe helyezése
A JAR-csomag üzembe helyezése az Azure Container Appsben.
Feljegyzés
Szükség esetén megadhatja a JDK-verziót a Java buildkörnyezet változóiban. További információ: A Java környezeti változóinak összeállítása az Azure Container Appsben.
Most már üzembe helyezheti a WAR-fájlt a az containerapp up CLI paranccsal.
az containerapp up \
--name $API_NAME \
--resource-group $RESOURCE_GROUP \
--location $LOCATION \
--environment $ENVIRONMENT \
--artifact <JAR_FILE_PATH_AND_NAME> \
--ingress external \
--target-port 8080 \
--query properties.configuration.ingress.fqdn
Feljegyzés
Az alapértelmezett JDK-verzió 17. Ha módosítania kell a JDK-verziót az alkalmazással való kompatibilitás érdekében, az --build-env-vars BP_JVM_VERSION=<YOUR_JDK_VERSION> argumentummal módosíthatja a verziószámot.
További buildkörnyezeti változókért tekintse meg a Java környezeti változóinak összeállítása az Azure Container Appsben című témakört.
Az alkalmazás ellenőrzése
Ebben a példában a containerapp up parancs tartalmazza az --query properties.configuration.ingress.fqdn argumentumot, amely visszaadja a teljes tartománynevet (FQDN), más néven az alkalmazás URL-címét. Az alábbi lépésekkel ellenőrizheti az alkalmazás naplóit az üzembehelyezési problémák kivizsgálásához:
A kimeneti alkalmazás URL-címét az Üzembe helyezés szakasz Kimenetek lapján érheti el.
Az Azure Container Apps-példány áttekintési lapján válassza a Naplók lehetőséget az alkalmazás naplóinak ellenőrzéséhez.
További információ
- Microsoft Identitásplatform (Microsoft Entra-azonosító fejlesztőknek)
- A Microsoft Authentication Library (MSAL) áttekintése
- Gyorsútmutató: Alkalmazás regisztrálása a Microsoft Identitásplatformon
- Rövid útmutató: Ügyfélalkalmazás konfigurálása webes API-k eléréséhez
- A Microsoft Entra ID-alkalmazás hozzájárulási élményének ismertetése
- Felhasználói és rendszergazdai hozzájárulás ismertetése
- Alkalmazás- és szolgáltatásfőobjektumok a Microsoft Entra ID-ban
- Nemzeti felhők
- MSAL-kódminták
- Microsoft Entra ID Spring Boot Starter ügyfélkódtár Java-hoz
- Microsoft Authentication Library for Java (MSAL4J)
- MSAL4J Wiki
- Azonosító jogkivonatok
- Hozzáférési jogkivonatok a Microsoft Identitásplatform
Következő lépések
További információkért és egyéb üzembe helyezési lehetőségekért tekintse meg az alábbi cikkeket: