Hızlı Başlangıç: Java web uygulamasına Microsoft ile oturum açma ekleme
Hoş Geldiniz! Bu muhtemelen beklediğiniz sayfa değildir. Bir düzeltme üzerinde çalışırken bu bağlantı sizi doğru makaleye götürmelidir:
Hızlı Başlangıç: Java web uygulamasına Microsoft ile oturum açma ekleme
Bu sorun için özür dileriz ve bu sorunu çözmek için çalışırken sabrınızı takdir ediyoruz.
Bu hızlı başlangıçta, java web uygulamasının kullanıcılarda nasıl oturum açabileceğini ve Microsoft Graph API'sini nasıl çağırabileceğini gösteren bir kod örneği indirip çalıştıracaksınız. Herhangi bir Microsoft Entra kuruluşundaki kullanıcılar uygulamada oturum açabilir.
Genel bakış için, örneğin nasıl çalıştığını gösteren diyagrama bakın.
Önkoşullar
Bu örneği çalıştırmak için şunları yapmanız gerekir:
- Java Development Kit (JDK) 8 veya üzeri.
- Maven.
1. Adım: Uygulamanızı Azure portalında yapılandırma
Bu hızlı başlangıçta kod örneğini kullanmak için:
- Yanıt URL'leri
https://localhost:8443/msal4jsample/secure/aad
vehttps://localhost:8443/msal4jsample/graph/me
ekleyin. - İstemci gizli anahtarını oluşturun.
Uygulamanız bu özniteliklerle yapılandırıldı.
2. Adım: Kod örneğini indirme
Projeyi indirin ve .zip dosyasını sürücünüzün köküne yakın bir klasöre ayıklayın. Örneğin, C:\Azure-Samples.
HTTPS'yi localhost ile kullanmak için özellikleri sağlayın server.ssl.key
. Otomatik olarak imzalanan bir sertifika oluşturmak için keytool yardımcı programını kullanın (JRE'de bulunur).
Bir örnek aşağıda verilmiştir:
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
Oluşturulan keystore dosyasını resources klasörüne yerleştirin.
Not
Enter_the_Supported_Account_Info_Here
3. Adım: Kod örneğini çalıştırma
Projeyi çalıştırmak için şu adımlardan birini uygulayın:
- Eklenmiş Spring Boot sunucusunu kullanarak doğrudan IDE'nizden çalıştırın.
- Maven kullanarak bir WAR dosyasına paketleyin ve apache Tomcat gibi bir J2EE kapsayıcı çözümüne dağıtın.
Projeyi IDE'den çalıştırma
Web uygulamasını bir IDE'den çalıştırmak için çalıştır'ı seçin ve projenin giriş sayfasına gidin. Bu örnek için standart giriş sayfası URL'si https://localhost:8443.
Ön sayfada Oturum Aç düğmesini seçerek kullanıcıları Microsoft Entra Id'ye yönlendirin ve kimlik bilgilerini isteyin.
Kullanıcıların kimliği doğrulandıktan sonra adresine yönlendirilirler
https://localhost:8443/msal4jsample/secure/aad
. Artık oturum açtılar ve sayfada kullanıcı hesabıyla ilgili bilgiler gösterilir. Örnek kullanıcı arabiriminde şu düğmeler vardır:- Oturumu Kapat: Geçerli kullanıcıyı uygulamadan çıkarır ve bu kullanıcıyı giriş sayfasına yönlendirir.
- Kullanıcı Bilgilerini Göster: Microsoft Graph için bir belirteç alır ve oturum açmış kullanıcı hakkında temel bilgileri döndüren belirteci içeren bir istekle Microsoft Graph'ı çağırır.
Projeyi Tomcat'ten çalıştırma
Web örneğini Tomcat'e dağıtmak istiyorsanız kaynak kodda birkaç değişiklik yapın.
ms-identity-java-webapp/src/main/java/com.microsoft.azure.msalwebsample/MsalWebSampleApplication'i açın.
Tüm kaynak kodunu silin ve şu kodla değiştirin:
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); } }
Tomcat'in varsayılan HTTP bağlantı noktası 8080'dir, ancak 8443 numaralı bağlantı noktası üzerinden bir HTTPS bağlantısına ihtiyacınız vardır. Bu ayarı yapılandırmak için:
tomcat/conf/server.xml adresine gidin.
Etiketi arayın
<connector>
ve var olan bağlayıcıyı şu bağlayıcıyla değiştirin:<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"/>
Bir Komut İstemi penceresi açın. Bu örneğin kök klasörüne (pom.xml dosyasının bulunduğu) gidin ve projeyi oluşturmak için komutunu çalıştırın
mvn > package
.- Bu komut/targets dizininizde bir msal-web-sample-0.1.0.war dosyası oluşturur.
- Bu dosyayı msal4jsample.war olarak yeniden adlandırın.
- WAR dosyasını Tomcat veya başka bir J2EE kapsayıcı çözümü kullanarak dağıtın.
- msal4jsample.war dosyasını dağıtmak için , tomcat yüklemenizdeki /webapps/ dizinine kopyalayın ve tomcat sunucusunu başlatın.
Dosya dağıtıldıktan sonra bir tarayıcı kullanarak adresine https://localhost:8443/msal4jsample gidin.
Önemli
Bu hızlı başlangıç uygulaması, kendisini gizli istemci olarak tanımlamak için bir istemci gizli dizisi kullanır. İstemci gizli dizisi proje dosyalarınıza düz metin olarak eklendiğinden, güvenlik nedeniyle uygulamayı üretim ortamında kullanmadan önce istemci gizli dizisi yerine sertifika kullanmanızı öneririz. Sertifika kullanma hakkında daha fazla bilgi için bkz . Uygulama kimlik doğrulaması için sertifika kimlik bilgileri.
Daha Fazla Bilgi
Örnek nasıl çalışır?
MSAL alma
Java için MSAL (MSAL4J), kullanıcılarda oturum açmak ve Microsoft kimlik platformu tarafından korunan bir API'ye erişmek için kullanılan belirteçleri istemek için kullanılan Java kitaplığıdır.
Uygulamanın pom.xml (Maven) veya build.gradle (Gradle) dosyasında aşağıdaki değişiklikleri yaparak bağımlılıklarınızı yönetmek için > Maven veya Gradle kullanarak uygulamanıza MSAL4J ekleyin.
pom.xml:
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>msal4j</artifactId>
<version>1.0.0</version>
</dependency>
build.gradle dosyasında:
compile group: 'com.microsoft.azure', name: 'msal4j', version: '1.0.0'
MSAL'ı başlatma
MSAL4J'yi kullaneceğiniz dosyanın başına aşağıdaki kodu ekleyerek Java için MSAL başvurusu ekleyin:
import com.microsoft.aad.msal4j.*;
Yardım ve destek
Yardıma ihtiyacınız varsa, bir sorunu bildirmek veya destek seçenekleriniz hakkında bilgi edinmek istiyorsanız bkz . Geliştiriciler için yardım ve destek.
Sonraki adımlar
Microsoft kimlik platformu kullanıcıların oturum açmasını sağlayan web uygulamaları oluşturma hakkında daha ayrıntılı bilgi için çok parçalı senaryo serisine bakın: