İstemci uygulamaları

Uygulama örneği oluştur

Pre-requisites

MSAL4J ile uygulamanızın örneğini oluşturmadan önce:

  1. Genel İstemci ve Gizli İstemci uygulamaları olmak üzere kullanılabilir İstemci uygulaması türlerini anlayın.
  2. Uygulamayı Microsoft Entra ID'ye kaydetmeniz gerekir. Bu nedenle şunu bileceksiniz:
    • Bu clientID (GUID'yi temsil eden dize)
    • Kimlik sağlayıcısı URL'si (örnek olarak adlandırılır) ve uygulamanızın oturum açma hedef kitlesi. Bu iki parametre birlikte otorite olarak adlandırılır.
    • TenantID Büyük olasılıkla bir iş kolu uygulaması yazıyor olmanız durumunda (yalnızca kuruluşunuz için, tek kiracılı uygulama olarak da adlandırılır)
    • Gizli bir istemci uygulamasıysa, uygulama gizli anahtarı (clientSecret dize) veya sertifikası
    • Web uygulamaları için kimlik sağlayıcısının redirectUri güvenlik belirteçleriyle uygulamanızla nerede iletişim kuracağını da ayarlamış olursunuz.

Genel İstemci uygulaması örneği oluşturma

String PUBLIC_CLIENT_ID;
String AUTHORITY;

PublicClientApplication app = 
    PublicClientApplication
        .builder(PUBLIC_CLIENT_ID)
        .authority(AUTHORITY)
        .build();

Gizli istemci uygulaması örneğini oluşturma

İstemci Kimlik Bilgileri'nde açıklandığı gibi, bir istemci parolasına ya da bir sertifikaya ihtiyacınız olacak.

Bir gizli anahtarınız varsa:

String PUBLIC_CLIENT_ID;
String AUTHORITY;
String CLIENT_SECRET;

IClientCredential credential = ClientCredentialFactory.createFromSecret(CLIENT_SECRET);
ConfidentialClientApplication app = 
    ConfidentialClientApplication
        .builder(PUBLIC_CLIENT_ID, credential)
        .authority(AUTHORITY)
        .build();

Sertifikanız varsa:

String PUBLIC_CLIENT_ID;
String AUTHORITY;
PrivateKey PRIVATE_KEY;  
X509Certificate PUBLIC_KEY;

IClientCredential credential = ClientCredentialFactory.createFromCertificate(PRIVATE_KEY, PUBLIC_KEY);
ConfidentialClientApplication app = 
    ConfidentialClientApplication
        .builder(PUBLIC_CLIENT_ID, credential)
        .authority(AUTHORITY)
        .build();