Delen via


Azure-verificatie in Java-ontwikkelomgevingen

Dit artikel bevat een overzicht van de ondersteuning van de Azure Identity-bibliotheek voor Verificatie met Microsoft Entra-token. Deze ondersteuning maakt verificatie mogelijk voor toepassingen die lokaal worden uitgevoerd op ontwikkelcomputers via een set TokenCredential implementaties.

In dit artikel worden de volgende onderwerpen behandeld:

Zie Problemen met de verificatie van ontwikkelomgevingen oplossen voor het oplossen van problemen met de verificatie van de ontwikkelomgeving.

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 onder Standaardclienttype ja voor de toepassing Behandelen als een openbare 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.

U moet ook de beheerder van uw tenant zijn om toestemming te verlenen aan uw toepassing wanneer u zich voor de eerste keer 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 vanuit de clientbibliotheek azure-security-keyvault-secrets gebruikt op DeviceCodeCredential een IoT-apparaat.

DeviceCodeCredential deviceCodeCredential = new DeviceCodeCredentialBuilder()
  .challengeConsumer(challenge -> {
    // lets user know of 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 eerdere 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 in InteractiveBrowserCredentialBuilder, een omleidings-URL is vereist. 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 SecretClient clientbibliotheek azure-security-keyvault-secrets kunt verifiëren met behulp van de InteractiveBrowserCredential.

InteractiveBrowserCredential interactiveBrowserCredential = new InteractiveBrowserCredentialBuilder()
  .clientId("<your client ID>")
  .redirectUrl("http://localhost:8765")
  .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();

Azure CLI-referentie

De Azure CLI-referenties worden geverifieerd in een ontwikkelomgeving met de ingeschakelde gebruiker of service-principal in Azure CLI. De Azure CLI wordt gebruikt op basis van een gebruiker die al is aangemeld en gebruikt de CLI om de toepassing te verifiëren bij Microsoft Entra ID.

Aanmelden bij Azure CLI voor AzureCliCredential

Meld u aan als een gebruiker met de volgende Azure CLI-opdracht :

az login

Meld u aan als een service-principal met de volgende opdracht:

az login \
    --service-principal \
    --username <client-ID> \
    --password <client-secret> \
    --tenant <tenant-ID>

Als het account of de service-principal toegang heeft tot meerdere tenants, controleert u of de gewenste tenant of het gewenste abonnement de status Ingeschakeld heeft in de uitvoer van de volgende opdracht:

az account list

Voordat u code gebruikt, voert u AzureCliCredential de volgende opdracht uit om te controleren of het account is geconfigureerd.

az account get-access-token

Mogelijk moet u dit proces na een bepaalde periode herhalen, afhankelijk van de geldigheid van het vernieuwingstoken in uw organisatie. Over het algemeen is de geldigheidsperiode van het vernieuwingstoken een paar weken tot een paar maanden. AzureCliCredential vraagt u zich opnieuw aan te melden.

Een gebruikersaccount verifiëren met Azure CLI

In het volgende voorbeeld ziet u hoe u de SecretClient verificatie vanuit de clientbibliotheek azure-security-keyvault-secrets gebruikt met behulp van het AzureCliCredential werkstation waarop Azure CLI is geïnstalleerd en aangemeld.

AzureCliCredential cliCredential = new AzureCliCredentialBuilder().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(cliCredential)
  .buildClient();

IntelliJ-referentie

De IntelliJ-referentie wordt geverifieerd in een ontwikkelomgeving met het account in Azure Toolkit voor IntelliJ. Het gebruikt de aangemelde gebruikersgegevens op de IntelliJ IDE en gebruikt deze om de toepassing te verifiëren bij Microsoft Entra ID.

Aanmelden bij Azure Toolkit voor IntelliJ voor IntelliJCredential

Gebruik de volgende stappen om u aan te melden:

  1. Open In uw IntelliJ-venster Invoegtoepassingen voor bestandsinstellingen > >.
  2. Zoek in de marketplace naar 'Azure Toolkit for IntelliJ'. Installeer en start IDE opnieuw op.
  3. De nieuwe menuopdracht Extra > Azure-aanmelding > zoeken
  4. Met apparaataanmelding kunt u zich aanmelden als een gebruikersaccount. Volg de instructies om u aan te melden op de login.microsoftonline.com website met de apparaatcode. IntelliJ vraagt u om uw abonnementen te selecteren. Selecteer het abonnement met de resources waartoe u toegang wilt hebben.

Een gebruikersaccount verifiëren met IntelliJ IDEA

In het volgende voorbeeld ziet u hoe u de SecretClient clientbibliotheek azure-security-keyvault-secrets kunt verifiëren met behulp van de IntelliJCredential clientbibliotheek op een werkstation waarop IntelliJ IDEA is geïnstalleerd en dat de gebruiker zich heeft aangemeld met een Azure-account bij de Azure-toolkit voor IntelliJ.

IntelliJCredential intelliJCredential = new IntelliJCredentialBuilder()
  .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(intelliJCredential)
  .buildClient();

Volgende stappen

Dit artikel heeft betrekking op verificatie tijdens de ontwikkeling met behulp van referenties die beschikbaar zijn op uw computer. 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 de ontwikkelomgeving, raadpleegt u Problemen met verificatie van de ontwikkelomgeving 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.