Megosztás a következőn keresztül:


Bejelentkezés hozzáadása Microsoft Entra-fiókkal egy Spring-webalkalmazáshoz

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 lapjára, amikor névtelenül hozzáfér. Az alábbi képernyőképen a Microsoft Entra bejelentkezési oldala látható:

Képernyőkép az alkalmazás

Előfeltételek

A cikk lépéseinek elvégzéséhez a következő előfeltételek szükségesek:

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

  1. Keresse meg a https://start.spring.io/.

  2. Adja meg, hogy Maven projektet szeretne létrehozni Java-, adja meg az alkalmazás csoport és Artifact nevét.

  3. Adja hozzá a függőségeketa Spring Webhez és az OAuth2 ügyfélhez.

  4. A lap alján válassza a GENERATE gombot.

  5. 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

  1. Bontsa ki a letöltött projektfájlokat a helyi számítógép egyik könyvtárába.

  2. Nyissa meg a pom.xml fájlt egy szövegszerkesztőben.

  3. Adja hozzá a Spring Cloud Azure-beli anyagjegyzéket (BOM) a <dependencyManagement> szakaszhoz:

    <dependencyManagement>
      <dependencies>
        <dependency>
          <groupId>com.azure.spring</groupId>
          <artifactId>spring-cloud-azure-dependencies</artifactId>
          <version>5.23.0</version>
          <type>pom</type>
          <scope>import</scope>
        </dependency>
      </dependencies>
    </dependencyManagement>
    
  4. Adja hozzá a Spring Cloud Azure Starter Microsoft Entra függőségét a <dependencies> szakaszhoz:

    <dependency>
      <groupId>com.azure.spring</groupId>
      <artifactId>spring-cloud-azure-starter-active-directory</artifactId>
    </dependency>
    
  5. 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.

  1. Jelentkezzen be https://portal.azure.com.

  2. Válassza Minden szolgáltatás, majd Identitás, majd Microsoft Entra-azonosító.

  3. 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.

  4. Ha elkészült, válassza a megjelenített hivatkozást az új könyvtár eléréséhez.

  5. 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

  1. A portál menüjében válassza Alkalmazásregisztrációk, majd az Alkalmazás regisztrálásalehetőséget.

  2. Adja meg az alkalmazás nevét, majd válassza a Regisztráláslehetőséget.

  3. 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.

  4. Válassza tanúsítványok & titkok a navigációs panelen. Ezután válassza Új titkos ügyfélkódlehetőséget.

  5. Adjon hozzá egy leírást, és válassza ki az időtartamot a Lejárati listában. Válassza , adja hozzá. A kulcs értéke automatikusan ki lesz töltve.

  6. 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 fogja tudni lekérni.)

    Képernyőkép az alkalmazásról az új titkos ügyfélkód kiemelésével.

  7. 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.

  8. Ú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.

  9. Ha a pom.xml fájlt úgy módosította, hogy a Microsoft Entra 3.0.0-nál korábbi verzióját használja: az Implicit engedélyezési és hibrid folyamatokterületen válassza azonosító jogkivonatokat (implicit és hibrid folyamatokhoz), majd válassza a Mentéslehetőséget.

Felhasználói fiók hozzáadása a címtárhoz, és a fiók hozzáadása egy appRole-hoz

  1. 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.

  2. 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.

    Képernyőkép az

    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.com

  3. Az alkalmazásregisztráció fő lapján válassza Alkalmazásszerepkörök, majd válassza Alkalmazásszerepkör létrehozásalehetőséget. Adja meg az űrlapmezők értékeit, válassza a Szeretné engedélyezni ezt az alkalmazás szerepkört?lehetőséget, majd kattintson a Alkalmazgombra.

    Képernyőkép az alkalmazás

  4. A Microsoft Entra-címtár Áttekintés lapján válassza Nagyvállalati alkalmazásoklehetőséget.

  5. Válassza Az összes alkalmazáslehetőséget, majd jelölje ki azt az alkalmazást, amelybe az előző lépésben hozzáadta az alkalmazásszerepkört.

  6. Válassza Felhasználók és csoportok, majd a Felhasználó/csoport hozzáadásalehetőséget.

  7. 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 lehetőséget, majd válassza a Hozzárendeléslehetőséget. Ha korábban több alkalmazásszerepkört is létrehozott, válasszon ki egy szerepkört.

  8. Lépjen vissza a Felhasználók panelre, válassza ki a tesztfelhasználót, és válassza a Jelszó alaphelyzetbe állításalehetőséget, és másolja a jelszót. A jelszót akkor fogja használni, amikor az oktatóanyag későbbi részében bejelentkezik az alkalmazásba.

Az alkalmazás konfigurálása és fordítása

  1. 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.

  2. Lépjen az src/main/resources mappára a projektben, majd nyissa meg a application.properties fájlt egy szövegszerkesztőben.

  3. 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.enabled A spring-cloud-azure-starter-active-directory által biztosított szolgáltatások engedélyezése
    spring.cloud.azure.active-directory.profile.tenant-id A Microsoft Entra ID-bérlő korábbi bérlőazonosítóját tartalmazza.
    spring.cloud.azure.active-directory.credential.client-id A korábban befejezett alkalmazásregisztrációból származó alkalmazásazonosító-et tartalmaz.
    spring.cloud.azure.active-directory.credential.client-secret Az alkalmazásregisztrációs kulcs, amelyet korábban befejezett, tartalmazza a értéket.
  4. Mentse és zárja be az application.properties fájlt.

  5. 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.

  6. Hozzon létre egy HelloController.java nevű új Java-fájlt a vezérlő mappában, és nyissa meg egy szövegszerkesztőben.

  7. Í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

  1. 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ó.

  2. Hozza létre Spring Boot-alkalmazását a Mavennel, és futtassa. Például:

    mvn clean package
    mvn spring-boot:run
    
  3. Miután a Maven elkészítette és elindította az alkalmazást, nyissa meg a http://localhost:8080/Admin egy webböngészőben. Meg kell kérni, hogy adja meg a felhasználónevet és a jelszót.

    Képernyőkép az alkalmazás

    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.

    Képernyőkép az alkalmazás

  4. Miután sikeresen bejelentkezett, látnia kell a vezérlő "Rendszergazdai üzenet" szövegmintáját.

    Alkalmazásadminisztrátor üzenet képernyőképe.

Ö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:

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.