Klientapplikationer

Skapa en applikation

Förutsättningar

Innan du instansierar din app med MSAL4J:

  1. Förstå vilka typer av klientprogram som är tillgängliga – program för offentlig klient och konfidentiell klient.
  2. Du måste registrera programmet med Microsoft Entra ID. Du kommer därför att veta:
    • Dess clientID (en sträng som representerar ett GUID)
    • Identitetsproviderns URL (kallas instansen) och inloggningsmålgruppen för din applikation. Dessa två parametrar kallas tillsammans för auktoriteten.
    • Eventuellt TenantID om du utvecklar en verksamhetsapplikation (endast för din organisation, även kallat program för en enda klientorganisation)
    • Om det är en konfidentiell klientapp, dess programhemlighet (clientSecret sträng) eller certifikat
    • För webbapplikationer har du också angett redirectUri, dit identitetsleverantören ska återkoppla till din applikation med säkerhetstokenen.

Instansiera ett offentligt klientprogram

String PUBLIC_CLIENT_ID;
String AUTHORITY;

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

Skapa ett konfidentiellt klientprogram

Du behöver antingen en hemlighet eller ett certifikat enligt beskrivningen i Klientautentiseringsuppgifter.

Om du har en hemlighet:

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

Om du har ett certifikat:

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