Clienttoepassingen

Een toepassing instantiëren

Pre-requisites

Voordat u een exemplaar van uw app maakt met MSAL4J:

  1. Inzicht in de typen clienttoepassingen die beschikbaar zijn: openbare client- en vertrouwelijke clienttoepassingen.
  2. U moet de toepassing registreren bij Microsoft Entra ID. U zult dan ook het volgende weten:
    • De clientID ervan (een tekenreeks die een GUID voorstelt)
    • De URL van de identiteitsprovider (ook wel de instantie genoemd) en de aanmeldingsdoelgroep voor uw applicatie. Deze twee parameters worden gezamenlijk de autoriteit genoemd.
    • Mogelijk de TenantID als u een Line-of-Business-toepassing schrijft (dus alleen voor uw organisatie, ook wel een single-tenant-toepassing genoemd)
    • Als het een vertrouwelijke client-app betreft, het toepassingsgeheim ervan (clientSecret tekenreeks) of certificaat
    • Voor web-apps hebt u ook de redirectUri ingesteld, waar de identiteitsprovider beveiligingstokens naar uw toepassing terugstuurt.

Een openbare clienttoepassing instantiëren

String PUBLIC_CLIENT_ID;
String AUTHORITY;

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

Een vertrouwelijke clienttoepassing instantiëren

U hebt een geheim of een certificaat nodig, zoals beschreven in clientreferenties.

Als u een geheim hebt:

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();

Als u een certificaat hebt:

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();