Azure-verificatie met gebruikersreferenties

In dit artikel wordt beschreven hoe de Azure Identity-bibliotheek microsoft Entra-tokenverificatie ondersteunt met door de gebruiker verstrekte referenties. Deze ondersteuning wordt mogelijk gemaakt via een set TokenCredential-implementaties die in dit artikel worden besproken.

In dit artikel worden de volgende onderwerpen behandeld:

Zie Problemen met gebruikersreferentieverificatie oplossen voor het oplossen van verificatie van gebruikersreferenties.

Referentie voor apparaatcode

Met de referentie voor apparaatcode wordt een gebruiker interactief geverifieerd op apparaten met een beperkte gebruikersinterface. Het werkt door de gebruiker te vragen een aanmeldings-URL op een browsercomputer te bezoeken wanneer de toepassing probeert te verifiëren. De gebruiker voert vervolgens de apparaatcode in die wordt vermeld in de instructies, samen met de aanmeldingsreferenties. Na een geslaagde verificatie wordt de toepassing die verificatie heeft aangevraagd, geverifieerd op het apparaat waarop deze wordt uitgevoerd.

Zie Microsoft Identity Platform en de stroom voor het verlenen van OAuth 2.0-apparaatautorisatie voor meer informatie.

Toepassingen inschakelen voor apparaatcodestroom

Voer de volgende stappen uit om een gebruiker te verifiëren via de apparaatcodestroom:

  1. Ga naar Microsoft Entra-id in Azure Portal en zoek uw app-registratie.
  2. Navigeer naar de sectie Verificatie .
  3. Controleer onder Voorgestelde omgeleide URI's de URI die eindigt op /common/oauth2/nativeclient.
  4. Selecteer yes onder Standaardclienttype voor Treat application as a public client.

Met deze stappen kan de toepassing worden geverifieerd, maar u bent nog steeds niet gemachtigd om u aan te melden bij Microsoft Entra-id of om namens u toegang te krijgen tot resources. Als u dit probleem wilt oplossen, gaat u naar API-machtigingen en schakelt u Microsoft Graph en de resources in die u wilt openen, zoals Key Vault.

U moet ook de beheerder van uw tenant zijn om toestemming te verlenen aan uw toepassing wanneer u zich voor het eerst aanmeldt.

Als u de optie voor de apparaatcodestroom niet kunt configureren op uw Microsoft Entra-id, moet uw app mogelijk meerdere tenants hebben. Als u van uw app meerdere tenants wilt maken, gaat u naar het deelvenster Verificatie en selecteert u Vervolgens Accounts in een organisatiemap. Selecteer vervolgens Ja voor de toepassing Behandelen als openbare client.

Een gebruikersaccount verifiëren met apparaatcodestroom

In het volgende voorbeeld ziet u hoe u de SecretClient verificatie uitvoert vanuit de Azure Key Vault Secret-clientbibliotheek voor Java met behulp van het DeviceCodeCredential op een IoT-apparaat.

/**
 * Authenticate with device code credential.
 */
DeviceCodeCredential deviceCodeCredential = new DeviceCodeCredentialBuilder()
    .challengeConsumer(challenge -> {
    // Lets the user know about the challenge.
    System.out.println(challenge.getMessage());
    }).build();

// Azure SDK client builders accept the credential as a parameter.
SecretClient client = new SecretClientBuilder()
    .vaultUrl("https://<your Key Vault name>.vault.azure.net")
    .credential(deviceCodeCredential)
    .buildClient();

Interactieve browserreferenties

Deze referentie verifieert interactief een gebruiker met de standaardsysteembrowser en biedt een soepele verificatie-ervaring door u uw eigen referenties te laten gebruiken om uw toepassing te verifiëren.

Toepassingen inschakelen voor een interactieve OAuth 2-stroom

Als u wilt gebruiken InteractiveBrowserCredential, moet u een toepassing registreren in Microsoft Entra ID met machtigingen om u namens een gebruiker aan te melden. Volg de vorige stappen voor de apparaatcodestroom om uw toepassing te registreren. Zoals eerder vermeld, moet een beheerder van uw tenant toestemming verlenen aan uw toepassing voordat een gebruikersaccount zich kan aanmelden.

U ziet mogelijk dat InteractiveBrowserCredentialBuilderer een omleidings-URL vereist is. Voeg de omleidings-URL toe aan de subsectie Omleidings-URI's onder de sectie Verificatie van uw geregistreerde Microsoft Entra-toepassing.

Een gebruikersaccount interactief verifiëren in de browser

In het volgende voorbeeld ziet u hoe u de SecretClientclientbibliotheek azure-security-keyvault-secrets kunt verifiëren met behulp van de InteractiveBrowserCredential.

/**
 * Authenticate interactively in the browser.
 */
InteractiveBrowserCredential interactiveBrowserCredential = new InteractiveBrowserCredentialBuilder()
    .clientId("<your app client ID>")
    .redirectUrl("YOUR_APP_REGISTERED_REDIRECT_URL")
    .build();

// Azure SDK client builders accept the credential as a parameter.
SecretClient client = new SecretClientBuilder()
    .vaultUrl("https://<your Key Vault name>.vault.azure.net")
    .credential(interactiveBrowserCredential)
    .buildClient();

Referenties voor gebruikersnaamwachtwoord

Dit UsernamePasswordCredential helpt bij het verifiëren van een openbare clienttoepassing met behulp van de gebruikersreferenties waarvoor geen meervoudige verificatie is vereist. In het volgende voorbeeld ziet u hoe u de SecretClientclientbibliotheek azure-security-keyvault-secrets kunt verifiëren met behulp van de UsernamePasswordCredential. De gebruiker mag meervoudige verificatie niet hebben ingeschakeld.

/**
 * Authenticate with username, password.
 */
UsernamePasswordCredential usernamePasswordCredential = new UsernamePasswordCredentialBuilder()
    .clientId("<your app client ID>")
    .username("<your username>")
    .password("<your password>")
    .build();

// Azure SDK client builders accept the credential as a parameter.
SecretClient client = new SecretClientBuilder()
    .vaultUrl("https://<your Key Vault name>.vault.azure.net")
    .credential(usernamePasswordCredential)
    .buildClient();

Zie Microsoft Identity Platform en OAuth 2.0 Resource Owner Password Credentials voor meer informatie.

Volgende stappen

Dit artikel heeft betrekking op verificatie met gebruikersreferenties. Deze vorm van verificatie is een van de verschillende manieren waarop u zich kunt verifiëren in de Azure SDK voor Java. In de volgende artikelen worden andere manieren beschreven:

Als u problemen ondervindt met betrekking tot verificatie van gebruikersreferenties, raadpleegt u Problemen met verificatie van gebruikersreferenties oplossen.

Nadat u de verificatie hebt beheerd, raadpleegt u Logboekregistratie configureren in de Azure SDK voor Java voor informatie over de functionaliteit voor logboekregistratie die door de SDK wordt geboden.