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 fejleszthet olyan Spring-webalkalmazást, amely támogatja Microsoft Entra-fiókáltali bejelentkezést. A jelen cikk összes lépésének befejezése után a webalkalmazás átirányítja a Microsoft Entra bejelentkezési lapra, amikor névtelenül fér hozzá. Az alábbi képernyőképen a Microsoft Entra bejelentkezési oldala látható:
Előfeltételek
A cikkben ismertetett lépések végrehajtásához a következő előfeltételekre van szükség:
- Egy támogatott Java Development Kit (JDK). Az Azure-beli fejlesztés során használható JDK-kkal kapcsolatos további információkért lásd Java-támogatást az Azure-ban és az Azure Stack.
- Apache Maven3.0-s vagy újabb verziója.
- Egy Azure-előfizetés. Ha nem rendelkezik Azure-előfizetéssel, hozzon létre egy ingyenes fiókot.
Fontos
A cikkben ismertetett lépések elvégzéséhez a Spring Boot 2.5-ös vagy újabb verziójára van szükség.
Alkalmazás létrehozása a Spring Initializr használatával
Keresse meg a https://start.spring.io/.
Adja meg, hogy létre szeretne-e hozni egy Maven-projektetJava. Adja meg az alkalmazás csoport - és összetevőneveit .
Adja hozzá a függőségeketa Spring Webhez és az OAuth2 ügyfélhez.
A lap alján válassza a GENERATE gombot.
Amikor a rendszer kéri, töltse le a projektet a helyi számítógépen található elérési útra.
A Microsoft Entra-függőség hozzáadása
Bontsa ki a letöltött projektfájlokat a helyi számítógép egyik könyvtárába.
Nyissa meg a pom.xml fájlt egy szövegszerkesztőben.
Adja hozzá a Spring Cloud Azure Anyagjegyzéket (BOM) a
<dependencyManagement>szakaszhoz.<dependencyManagement> <dependencies> <dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-cloud-azure-dependencies</artifactId> <version>7.4.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>Adja hozzá a Spring Cloud Azure Starter Microsoft Entra függőséget a
<dependencies>szakaszhoz.<dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-cloud-azure-starter-active-directory</artifactId> </dependency>Mentse és zárja be a pom.xml fájlt.
A Microsoft Entra-példány létrehozása
Ha Ön egy meglévő példány rendszergazdája, kihagyhatja ezt a folyamatot.
Jelentkezzen be https://portal.azure.com.
Válassza Minden szolgáltatás, majd Identitás, majd Microsoft Entra-azonosító.
Adja meg a Szervezet nevét és a Kezdeti tartománynevet. Másolja ki a könyvtár teljes URL-címét. Az OKTATÓANYAG későbbi részében az URL-cím használatával vehet fel felhasználói fiókokat. (Például:
azuresampledirectory.onmicrosoft.com.)Másolja ki a könyvtár teljes URL-címét. Az OKTATÓANYAG későbbi részében az URL-cím használatával vehet fel felhasználói fiókokat. (Például:
azuresampledirectory.onmicrosoft.com.).Ha végzett, válassza létrehozása lehetőséget. Az új erőforrás létrehozása néhány percet vesz igénybe.
Ha elkészült, válassza a megjelenített hivatkozást az új könyvtár eléréséhez.
Másolja a bérlőazonosítót. Az azonosító érték használatával konfigurálhatja az application.properties fájlt az oktatóanyag későbbi részében.
Alkalmazásregisztráció hozzáadása a Spring Boot-alkalmazáshoz
A portál menüjében válassza Alkalmazásregisztrációk, majd az Alkalmazás regisztrálásalehetőséget.
Adja meg az alkalmazás nevét, majd válassza a Regisztráláslehetőséget.
Amikor megjelenik az alkalmazásregisztráció lapja, másolja ki az alkalmazás (ügyfél) azonosítóját és a bérlőazonosítót. Ezekkel az értékekkel konfigurálhatja az application.properties fájlt az oktatóanyag későbbi részében.
Válassza tanúsítványok & titkok a navigációs panelen. Ezután válassza Új titkos ügyfélkódlehetőséget.
Adjon hozzá egy leírást, és válassza ki az időtartamot a Lejárati listában. Válassza , adja hozzá. A rendszer automatikusan kitölti a kulcs értékét.
Másolja és mentse az ügyfélkulcs értékét az application.properties fájl konfigurálásához az oktatóanyag későbbi részében. (Ezt az értéket később nem lehet lekérni.)
Az alkalmazásregisztráció fő lapján válassza a Hitelesítéslehetőséget, majd válassza a Platform hozzáadásalehetőséget. Ezután válassza webalkalmazásoklehetőséget.
Új Átirányítási URI-esetén adja meg a
http://localhost:8080/login/oauth2/code/, majd válassza a konfigurálása lehetőséget.Ha a pom.xml fájlt úgy módosította, hogy Microsoft Entra a 3.0.0-nál korábbi kezdőverziót használja: az Implicit engedélyezési és hibrid folyamatok területen válassza ki az azonosító jogkivonatokat (implicit és hibrid folyamatokhoz), majd válassza a Mentés lehetőséget.
Felhasználói fiók hozzáadása és Microsoft Entra alkalmazásszerepkör hozzárendelése
A Microsoft Entra ID-bérlő Áttekintés lapján válassza a Felhasználók lehetőséget, majd az Új felhasználó lehetőséget.
Amikor megjelenik a Felhasználói panel, adja meg a Felhasználónév és a Név. Ezután válassza a létrehozása opciót.
Jegyzet
A felhasználónév megadásakor meg kell adnia a címtár URL-címét az oktatóanyag korábbi szakaszából. Például:
test-user@azuresampledirectory.onmicrosoft.comAz alkalmazásregisztráció fő lapján válassza az Alkalmazásszerepkörök lehetőséget, majd válassza az Alkalmazásszerepkör létrehozása lehetőséget. Adja meg az űrlapmezők értékeit, válassza a Do you want to enable this app role?, and select Apply (Alkalmazás) lehetőséget.
A Microsoft Entra-címtár
Áttekintés lapján válassza Nagyvállalati alkalmazások lehetőséget.Válassza a Minden alkalmazás lehetőséget, majd válassza ki azt az alkalmazást, amelybe az előző lépésben hozzáadta az alkalmazásszerepkört.
Válassza a Felhasználók és csoportok lehetőséget, majd válassza a Felhasználó/csoport hozzáadása lehetőséget.
A Felhasználókcsoportban válassza a Nincs kiválasztvalehetőséget. Jelölje ki a korábban létrehozott felhasználót, válassza a Kiválasztás, majd a Hozzárendelés lehetőséget. Ha korábban több alkalmazásszerepkört is létrehozott, válasszon ki egy szerepkört.
Lépjen vissza a Felhasználók panelre, válassza ki a tesztfelhasználót, és válassza a Jelszó kérése lehetőséget. Másolja ki a jelszót. A jelszót akkor használja, amikor az oktatóanyag későbbi részében bejelentkezik az alkalmazásba.
Az alkalmazás konfigurálása és fordítása
Bontsa ki a fájlokat az oktatóanyag korábbi részében létrehozott és letöltött projektarchívumból egy könyvtárba.
Nyissa meg a projekt src/main/resources mappáját, majd nyissa meg az application.properties fájlt egy szövegszerkesztőben.
Adja meg az alkalmazásregisztráció beállításait a korábban létrehozott értékekkel. Például:
# Enable related features. spring.cloud.azure.active-directory.enabled=true # Specifies your Microsoft Entra ID tenant ID: spring.cloud.azure.active-directory.profile.tenant-id=<tenant-ID> # Specifies your App Registration's Application ID: spring.cloud.azure.active-directory.credential.client-id=<client-ID> # Specifies your App Registration's secret key: spring.cloud.azure.active-directory.credential.client-secret=<client-secret>Hol:
Paraméter Leírás spring.cloud.azure.active-directory.enabledEngedélyezi a . által spring-cloud-azure-starter-active-directorybiztosított funkciókat.spring.cloud.azure.active-directory.profile.tenant-idA Microsoft Entra ID-bérlő korábbi bérlőazonosítóját tartalmazza. spring.cloud.azure.active-directory.credential.client-idA korábban befejezett alkalmazásregisztrációból származó alkalmazásazonosító-et tartalmaz. spring.cloud.azure.active-directory.credential.client-secretAz alkalmazásregisztrációs kulcs, amelyet korábban befejezett, tartalmazza a értéket. Mentse és zárja be az application.properties fájlt.
Hozzon létre egy vezérlő nevű mappát az alkalmazás Java-forrásmappájában. Például: src/main/java/com/wingtiptoys/security/controller.
Hozzon létre egy HelloController.java nevű új Java-fájlt a vezérlő mappában, és nyissa meg egy szövegszerkesztőben.
Írja be a következő kódot, majd mentse és zárja be a fájlt:
package com.wingtiptoys.security; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; import org.springframework.security.access.prepost.PreAuthorize; @RestController public class HelloController { @GetMapping("Admin") @ResponseBody @PreAuthorize("hasAuthority('APPROLE_Admin')") public String Admin() { return "Admin message"; } }
Az alkalmazás létrehozása és tesztelése
Nyisson meg egy parancssort, és módosítsa a könyvtárat arra a mappára, amelyben az alkalmazás pom.xml fájlja található.
Hozza létre Spring Boot-alkalmazását a Mavennel, és futtassa. Például:
mvn clean package mvn spring-boot:runMiután a Maven felépíti és elindítja az alkalmazást, nyisson meg
http://localhost:8080/Adminegy webböngészőben. A rendszer felhasználónevet és jelszót kér.
Jegyzet
Előfordulhat, hogy a rendszer arra kéri, hogy módosítsa a jelszavát, ha ez az első bejelentkezés egy új felhasználói fiókhoz.
A sikeres bejelentkezés után megjelenik a vezérlő "Rendszergazdai üzenet" mintája.
Összefoglalás
Ebben az oktatóanyagban létrehozott egy új Java webalkalmazást a Microsoft Entra starter használatával, konfigurált egy új Microsoft Entra-bérlőt, regisztrált egy új alkalmazást a bérlőben, majd úgy konfigurálta az alkalmazást, hogy a Spring-széljegyzetek és -osztályok használatával védje a webalkalmazást.
Lásd még:
- Az új felhasználói felületi lehetőségekről az Új Azure portál alkalmazásregisztrációs képzési útmutatójában talál további információt.
Következő lépések
Ha többet szeretne megtudni a Springről és az Azure-ról, lépjen tovább a Spring on Azure dokumentációs központjába.