Rychlý Start: přidání přihlášení do webové aplikace Java pomocí Microsoftu

V tomto rychlém startu si stáhnete a spustíte ukázku kódu, která ukazuje, jak se může webová aplikace Java přihlašovat uživatelům a volat rozhraní Microsoft Graph API. uživatelé ze všech Azure Active Directory (Azure AD) se můžou přihlásit k aplikaci.

Přehled najdete v tématu o tom, jak ukázka funguje.

Požadavky

K provedení této ukázky budete potřebovat:

Registrace a stažení aplikace pro rychlý start

Existují dva způsoby, jak spustit aplikaci rychlý Start: Express (možnost 1) a ruční (možnost 2).

Možnost 1: registrace a Automatická konfigurace aplikace a stažení ukázky kódu

  1. Přejít k prostředí rychlý Start pro Azure Portal registrace aplikací
  2. Zadejte název aplikace a pak vyberte Registrovat.
  3. Podle pokynů v úvodním prostředí portálu Stáhněte automaticky nakonfigurovaný kód aplikace.

Možnost 2: Registrace a ruční konfigurace aplikace a vzorového kódu

Krok 1: Registrace aplikace

K registraci aplikace a ručnímu přidání registračních informací aplikace do ní použijte následující postup:

  1. Přihlaste se k webu Azure Portal.
  2. Pokud máte přístup k více klientům, pomocí filtru adresáře a odběry v horní nabídce přepněte do tenanta, ve kterém chcete aplikaci zaregistrovat.
  3. Vyhledejte a vyberte Azure Active Directory.
  4. V části Spravovat vyberte Registrace aplikací.
  5. Vyberte Nová registrace.
  6. Zadejte název vaší aplikace, například Java-WebApp. Uživatelé vaší aplikace můžou tento název zobrazit. Později ji můžete změnit.
  7. Vyberte Zaregistrovat.
  8. Na stránce Přehled si poznamenejte ID aplikace (klienta) a ID adresáře (tenant). Tyto hodnoty budete potřebovat později.
  9. V části Spravovat vyberte ověřování.
  10. Vyberte Přidat > Web platformy.
  11. V části identifikátory URI pro přesměrování zadejte https://localhost:8443/msal4jsample/secure/aad .
  12. Vyberte Konfigurovat.
  13. V části Web v části identifikátory URI pro přesměrování zadejte https://localhost:8443/msal4jsample/graph/me jako druhý identifikátor URI přesměrování.
  14. V části Správa vyberte Certifikáty a tajné kódy. V části tajné klíče klienta vyberte nový tajný klíč klienta.
  15. Zadejte popis klíče (například tajný klíč aplikace), ponechte výchozí hodnotu vypršení platnosti a vyberte Přidat.
  16. Všimněte si hodnoty tajného klíče klienta. Budete ho potřebovat později.

Krok 1: Konfigurace aplikace v Azure Portal

Chcete-li použít ukázku kódu v tomto rychlém startu:

  1. Přidejte adresy URL odpovědi https://localhost:8443/msal4jsample/secure/aad a https://localhost:8443/msal4jsample/graph/me .
  2. Vytvořte tajný klíč klienta.

Už nakonfigurované Vaše aplikace je nakonfigurovaná s těmito atributy.

Krok 2: stažení ukázky kódu

Stáhněte si projekt a extrahujte soubor .zip do složky poblíž kořene jednotky. Například C:\Azure-Samples.

Chcete-li použít protokol HTTPS s localhost, zadejte server.ssl.key Vlastnosti. Chcete-li vygenerovat certifikát podepsaný svým držitelem, použijte nástroj pro nástroj (obsažený v JRE).

Tady je příklad:

 keytool -genkeypair -alias testCert -keyalg RSA -storetype PKCS12 -keystore keystore.p12 -storepass password

 server.ssl.key-store-type=PKCS12
 server.ssl.key-store=classpath:keystore.p12
 server.ssl.key-store-password=password
 server.ssl.key-alias=testCert

Vygenerovaný soubor úložiště klíčů vložte do složky Resources .

Poznámka

Enter_the_Supported_Account_Info_Here

Krok 3: Konfigurace ukázky kódu

  1. Soubor .zip extrahujte do místní složky.

  2. Volitelné. Pokud používáte integrované vývojové prostředí, otevřete ukázku v tomto prostředí.

  3. Otevřete soubor Application. Properties . Můžete ji najít v části Src/Main/Resources/ Folder. Nahraďte hodnoty v polích aad.clientId , aad.authority a aad.secretKey pomocí ID aplikace, ID tenanta a hodnot tajného klíče klienta v uvedeném pořadí. Jak by měl vypadat takto:

    aad.clientId=Enter_the_Application_Id_here
    aad.authority=https://login.microsoftonline.com/Enter_the_Tenant_Info_Here/
    aad.secretKey=Enter_the_Client_Secret_Here
    aad.redirectUriSignin=https://localhost:8443/msal4jsample/secure/aad
    aad.redirectUriGraph=https://localhost:8443/msal4jsample/graph/me
    aad.msGraphEndpointHost="https://graph.microsoft.com/"
    

    V předchozím kódu:

    • Enter_the_Application_Id_here je ID aplikace pro aplikaci, kterou jste zaregistrovali.
    • Enter_the_Client_Secret_Here je tajný kód klienta , který jste vytvořili v části certifikáty & tajných kódů pro aplikaci, kterou jste zaregistrovali.
    • Enter_the_Tenant_Info_Here je hodnota ID adresáře aplikace, kterou jste zaregistrovali.
  4. Chcete-li použít protokol HTTPS s localhost, zadejte server.ssl.key Vlastnosti. Chcete-li vygenerovat certifikát podepsaný svým držitelem, použijte nástroj pro nástroj (obsažený v JRE).

    Tady je příklad:

     keytool -genkeypair -alias testCert -keyalg RSA -storetype PKCS12 -keystore keystore.p12 -storepass password
    
     server.ssl.key-store-type=PKCS12
     server.ssl.key-store=classpath:keystore.p12
     server.ssl.key-store-password=password
     server.ssl.key-alias=testCert
    
  5. Vygenerovaný soubor úložiště klíčů vložte do složky Resources .

Krok 3: spuštění ukázky kódu

Krok 4: spuštění ukázky kódu

Chcete-li spustit projekt, proveďte jeden z následujících kroků:

  • Spusťte ji přímo z integrovaného vývojového prostředí pomocí integrovaného spouštěcího serveru.
  • Zabalíte ho do souboru WAR pomocí Mavena pak ho nasadíte do řešení kontejnerů J2EE, jako je Apache Tomcat.
Spuštění projektu z integrovaného vývojového prostředí

Chcete-li spustit webovou aplikaci z rozhraní IDE, vyberte možnost spustit a poté přejít na domovskou stránku projektu. V této ukázce je adresa URL standardní domovské stránky https://localhost:8443 .

  1. na přední stránce vyberte tlačítko pro přihlášení a přesměrujte uživatele na Azure Active Directory a vyzvat je k zadání přihlašovacích údajů.

  2. Po ověření uživatelů budou přesměrováni na https://localhost:8443/msal4jsample/secure/aad . Jsou nyní přihlášeni a na stránce se zobrazí informace o uživatelském účtu. Ukázková uživatelská rozhraní mají tato tlačítka:

    • Odhlášení: podepíše aktuálního uživatele z aplikace a přesměruje tohoto uživatele na domovskou stránku.
    • zobrazit informace o uživateli: získá token pro Microsoft Graph a zavolá Microsoft Graph s požadavkem, který obsahuje token, který vrátí základní informace o přihlášeném uživateli.
Spuštění projektu z Tomcat

Pokud chcete nasadit webovou ukázku do Tomcat, proveďte několik změn zdrojového kódu.

  1. Otevřete MS-identity-Java-WebApp/src/Main/Java/com. Microsoft. Azure. msalwebsample/MsalWebSampleApplication.

    • Odstraňte všechen zdrojový kód a nahraďte ho tímto kódem:

       package com.microsoft.azure.msalwebsample;
      
       import org.springframework.boot.SpringApplication;
       import org.springframework.boot.autoconfigure.SpringBootApplication;
       import org.springframework.boot.builder.SpringApplicationBuilder;
       import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
      
       @SpringBootApplication
       public class MsalWebSampleApplication extends SpringBootServletInitializer {
      
        public static void main(String[] args) {
         SpringApplication.run(MsalWebSampleApplication.class, args);
        }
      
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
         return builder.sources(MsalWebSampleApplication.class);
        }
       }
      
  2. Výchozí port HTTP Tomcat je 8080, ale budete potřebovat připojení HTTPS přes port 8443. Konfigurace tohoto nastavení:

    • Přejít na Tomcat/conf/server.xml.

    • Vyhledejte <connector> značku a nahraďte existující konektor tímto konektorem:

      <Connector
               protocol="org.apache.coyote.http11.Http11NioProtocol"
               port="8443" maxThreads="200"
               scheme="https" secure="true" SSLEnabled="true"
               keystoreFile="C:/Path/To/Keystore/File/keystore.p12" keystorePass="KeystorePassword"
               clientAuth="false" sslProtocol="TLS"/>
      
  3. Otevřete okno příkazového řádku. Přejít do kořenové složky této ukázky (kde se nachází soubor pom.xml) a spustit mvn package pro sestavení projektu.

    • Tento příkaz vytvoří v adresáři /targets soubor msal-web-Sample-0.1.0. War .
    • Přejmenujte tento soubor na msal4jsample. War.
    • Nasaďte soubor WAR pomocí Tomcat nebo jakéhokoli jiného řešení kontejneru J2EE.
      • Pokud chcete nasadit soubor msal4jsample. War, zkopírujte ho do adresáře /webapps/ v instalaci Tomcat a potom spusťte server Tomcat.
  4. Po nasazení souboru přejdete na https://localhost:8443/msal4jsample adresu pomocí prohlížeče.

Důležité

V tomto rychlém startu aplikace se k identifikaci jako důvěrného klienta používá tajný klíč klienta. Vzhledem k tomu, že se tajný klíč klienta přidá do souborů projektu jako prostý text, z bezpečnostních důvodů doporučujeme použít certifikát místo tajného klíče klienta před použitím aplikace v produkčním prostředí. Další informace o použití certifikátu najdete v tématu přihlašovací údaje certifikátu pro ověřování aplikací.

Další informace

Jak ukázka funguje

Diagram, který ukazuje, jak ukázková aplikace vygenerovaná tímto rychlým startem funguje.

Získat MSAL

MSAL for Java (MSAL4J) je knihovna Java používaná k přihlašování uživatelů a žádosti o tokeny, které se používají pro přístup k rozhraní API, které je chráněné Microsoft identity platform.

Přidejte do své aplikace MSAL4J pomocí Maven nebo Gradle pro správu závislostí provedením následujících změn v souboru aplikace pom.xml (Maven) nebo Build. Gradle (Gradle).

V pom.xml:

<dependency>
    <groupId>com.microsoft.azure</groupId>
    <artifactId>msal4j</artifactId>
    <version>1.0.0</version>
</dependency>

V sestavení. Gradle:

compile group: 'com.microsoft.azure', name: 'msal4j', version: '1.0.0'

Inicializovat MSAL

Přidáním následujícího kódu na začátek souboru, kde budete používat MSAL4J, přidejte odkaz na MSAL for Java:

import com.microsoft.aad.msal4j.*;

Nápověda a podpora

Pokud potřebujete pomoc, chcete ohlásit problém nebo získat informace o možnostech podpory, přečtěte si téma pomoc a podpora pro vývojáře.

Další kroky

podrobnější diskuzi o sestavování webových aplikací, které přihlásily uživatele na Microsoft identity platform, najdete v řadě scénářů s více částmi: