Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Tijdens lokale ontwikkeling moeten toepassingen worden geverifieerd bij Azure voor toegang tot verschillende Azure services. U kunt lokaal verifiëren met behulp van een van de volgende methoden:
- Gebruik een ontwikkelaarsaccount met een van de ontwikkelhulpprogramma's die worden ondersteund door de Azure Identity-bibliotheek.
- Gebruik een serviceprincipal. Zie Authenticate Java apps to Azure services tijdens lokale ontwikkeling met behulp van service-principals voor meer informatie.
In dit artikel wordt uitgelegd hoe u kunt verifiëren met behulp van een ontwikkelaarsaccount met hulpprogramma's die worden ondersteund door de Azure Identity-bibliotheek. In dit artikel leert u het volgende:
- Het gebruik van Microsoft Entra groepen voor het efficiënt beheren van machtigingen voor meerdere ontwikkelaarsaccounts.
- Rollen toewijzen aan ontwikkelaarsaccounts voor bereikmachtigingen.
- Aanmelden bij ondersteunde lokale ontwikkelhulpprogramma's.
- Verifiëren met behulp van een ontwikkelaarsaccount vanuit uw app-code.
Ondersteunde ontwikkelhulpprogramma's voor verificatie
Tijdens lokale ontwikkeling kan een app worden geverifieerd bij Azure met behulp van uw Azure referenties. Voordat deze verificatie werkt, moet u zijn aangemeld bij Azure vanuit een hulpprogramma voor ontwikkelaars, zoals een van de volgende:
- Azure CLI
- AZURE Developer CLI
- Azure PowerShell
- Visual Studio Code
- IntelliJ IDEE
De Azure Identity-bibliotheek kan detecteren dat de ontwikkelaar is aangemeld vanuit een van deze hulpprogramma's. De bibliotheek kan vervolgens het Microsoft Entra toegangstoken verkrijgen via het hulpprogramma om de app te verifiëren voor Azure als de aangemelde gebruiker.
Deze aanpak maakt gebruik van de bestaande Azure-accounts van de ontwikkelaar om het verificatieproces te stroomlijnen. Het account van een ontwikkelaar heeft echter waarschijnlijk meer machtigingen dan de app vereist, waardoor de machtigingen waarmee de app wordt uitgevoerd in productie worden overschreden. Als alternatief kunt u service-principals voor toepassingen maken voor gebruik tijdens de lokale ontwikkeling, waarbij u deze zo kunt instellen dat ze alleen de toegang hebben die nodig is voor de app.
Een Microsoft Entra groep maken voor lokale ontwikkeling
Maak een Microsoft Entra groep om de rollen (machtigingen) die de app nodig heeft in lokale ontwikkeling in te kapselen in plaats van de rollen toe te wijzen aan afzonderlijke service-principal-objecten. Deze aanpak biedt de volgende voordelen:
- Elke ontwikkelaar heeft dezelfde rollen toegewezen op groepsniveau.
- Als er een nieuwe rol nodig is voor de app, hoeft deze alleen aan de groep voor de app te worden toegevoegd.
- Als een nieuwe ontwikkelaar lid wordt van het team, wordt er een nieuwe toepassingsservice-principal gemaakt voor de ontwikkelaar en toegevoegd aan de groep, zodat de ontwikkelaar over de juiste machtigingen beschikt om aan de app te werken.
Navigeer naar de overzichtspagina Microsoft Entra ID in de Azure-portal.
Selecteer Alle groepen in het menu aan de linkerkant.
Selecteer Nieuwe groep op de pagina Groepen.
Vul op de pagina Nieuwe groep de volgende formuliervelden in:
- Groepstype: selecteer Beveiliging.
- Groepsnaam: Voer een naam in voor de groep die een verwijzing naar de app- of omgevingsnaam bevat.
- Groepsbeschrijving: Voer een beschrijving in waarmee het doel van de groep wordt uitgelegd.
Selecteer de koppeling Geen leden geselecteerd onder Leden om leden toe te voegen aan de groep.
Zoek in het uitklapvenster dat wordt geopend naar de service-principal die u eerder hebt gemaakt en selecteer deze uit de gefilterde resultaten. Kies de knop Selecteren onderaan het deelvenster om uw selectie te bevestigen.
Selecteer Maken onder aan de pagina Nieuwe groep om de groep te maken en terug te keren naar de pagina Alle groepen . Als de nieuwe groep niet wordt weergegeven, wacht u even en vernieuwt u de pagina.
Rollen toewijzen aan de groep
Bepaal vervolgens welke rollen (machtigingen) uw app nodig heeft voor welke resources en wijs deze rollen toe aan de Microsoft Entra groep die u hebt gemaakt. Aan groepen kan een rol worden toegewezen op het niveau van de bron, bron-groep of abonnement. In dit voorbeeld ziet u hoe u rollen toewijst binnen het bereik van de resourcegroep, omdat de meeste apps al hun Azure resources groeperen in één resourcegroep.
Navigeer in de Azure-portal naar de pagina Overview van de resourcegroep die uw app bevat.
Selecteer Toegangsbeheer (IAM) in de linkernavigatie.
Selecteer + Toevoegen en kies vervolgens roltoewijzing toevoegen in de vervolgkeuzelijst op de pagina Toegangsbeheer (IAM). De pagina Roltoewijzing toevoegen bevat verschillende tabbladen voor het configureren en toewijzen van rollen.
Gebruik op het tabblad Rol het zoekvak om de rol te vinden die u wilt toewijzen. Selecteer de rol en kies Volgende.
Op het tabblad Leden :
- Voor de waarde 'toegang toewijzen aan' selecteert u gebruiker, gebruikersgroep of service-principal.
- Voor de waarde Leden kiest u + Leden selecteren om het flyoutdeelvenster Leden selecteren te openen.
- Zoek naar de Microsoft Entra groep die u eerder hebt gemaakt en selecteer deze in de gefilterde resultaten. Kies Selecteren om de groep te selecteren en het uitklapdeelvenster te sluiten.
- Selecteer Beoordelen en toewijzen onderaan het tabblad Leden .
Selecteer op het tabblad Controleren en toewijzen de optie Controleren en toewijzen onderaan de pagina.
Meld u aan bij Azure met behulp van hulpprogramma's voor ontwikkelaars
Meld u vervolgens aan bij Azure met behulp van een van de ontwikkelhulpprogramma's die u kunt gebruiken om verificatie uit te voeren in uw ontwikkelomgeving. Het account dat u verifieert, moet ook aanwezig zijn in de Microsoft Entra groep die u eerder hebt gemaakt en geconfigureerd.
- Visual Studio Code
- IntelliJ IDEA
- Azure CLI
- Azure Developer CLI
- Azure PowerShell
Ontwikkelaars die Visual Studio Code gebruiken, kunnen zich rechtstreeks verifiëren met hun ontwikkelaarsaccount via de editor via de broker. Apps die DefaultAzureCredential of VisualStudioCodeCredential gebruiken, kunnen dit account vervolgens gebruiken om app-verzoeken te verifiëren via een naadloze single-sign-on ervaring.
Ga in Visual Studio Code naar het deelvenster Extensions en installeer de extensie Azure Resources. Met deze extensie kunt u Azure resources rechtstreeks vanuit Visual Studio Code bekijken en beheren. Het maakt ook gebruik van de ingebouwde Visual Studio Code Microsoft-verificatieprovider voor verificatie met Azure.
Open het opdrachtenpalet in Visual Studio Code en zoek en selecteer Azure: Aanmelden.
Aanbeveling
Open het opdrachtenpalet met
Ctrl+Shift+Pop Windows/Linux ofCmd+Shift+Pin macOS.
Verifiëren bij Azure services vanuit uw app
De Azure Identity library biedt implementaties van TokenCredential die ondersteuning bieden voor verschillende scenario's en Microsoft Entra verificatiestromen. In de volgende stappen ziet u hoe u DefaultAzureCredential of een specifieke referentie voor het ontwikkelhulpprogramma gebruikt wanneer u lokaal met gebruikersaccounts werkt.
De code implementeren
Voeg de
azure-identityafhankelijkheid toe aan uwpom.xmlbestand:<dependency> <groupId>com.azure</groupId> <artifactId>azure-identity</artifactId> </dependency>Kies een van de referentie-implementaties op basis van uw scenario.
- Gebruik een referentie die specifiek is voor uw ontwikkelhulpprogramma: deze optie is het meest geschikt voor scenario's met één persoon of één hulpprogramma.
- Gebruik een referentie die beschikbaar is voor gebruik in elk ontwikkelprogramma: deze optie is het beste voor opensource-projecten en diverse toolteams.
Een referentie gebruiken die specifiek is voor uw ontwikkelhulpprogramma
Geef een TokenCredential-exemplaar door dat overeenkomt met een specifiek ontwikkelhulpprogramma aan de Azure serviceclientconstructor, zoals AzureCliCredential.
import com.azure.identity.AzureCliCredential;
import com.azure.identity.AzureCliCredentialBuilder;
import com.azure.security.keyvault.secrets.SecretClient;
import com.azure.security.keyvault.secrets.SecretClientBuilder;
AzureCliCredential credential = new AzureCliCredentialBuilder().build();
SecretClient client = new SecretClientBuilder()
.vaultUrl("https://<your-key-vault-name>.vault.azure.net")
.credential(credential)
.buildClient();
Elke referentie voor het hulpprogramma volgt hetzelfde patroon. Vervang het referentietype en de bijbehorende bouwer indien nodig.
AzureCliCredential/AzureCliCredentialBuilderAzureDeveloperCliCredential/AzureDeveloperCliCredentialBuilderAzurePowerShellCredential/AzurePowerShellCredentialBuilderIntelliJCredential/IntelliJCredentialBuilderVisualStudioCodeCredential/VisualStudioCodeCredentialBuilder
Een referentie gebruiken die beschikbaar is voor gebruik in elk ontwikkelhulpprogramma
Gebruik een DefaultAzureCredential exemplaar dat is geoptimaliseerd voor alle lokale ontwikkelhulpprogramma's. Voor dit voorbeeld is de omgevingsvariabele AZURE_TOKEN_CREDENTIALS vereist die is ingesteld op dev. Zie Een categorie referentietype uitsluiten voor meer informatie.
import com.azure.identity.DefaultAzureCredential;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.security.keyvault.secrets.SecretClient;
import com.azure.security.keyvault.secrets.SecretClientBuilder;
DefaultAzureCredential credential = new DefaultAzureCredentialBuilder()
.requireEnvVars(AzureIdentityEnvVars.AZURE_TOKEN_CREDENTIALS)
.build();
SecretClient client = new SecretClientBuilder()
.vaultUrl("https://<your-key-vault-name>.vault.azure.net")
.credential(credential)
.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:
- Java-applicaties authenticeren voor Azure-services tijdens lokale ontwikkeling met behulp van service-principals
- Authenticeer Java-apps die gehost zijn op Azure bij Azure-resources met behulp van een door het systeem toegewezen beheerde identiteit
- Authenticeer Azure-gehoste Java-apps op Azure-resources met behulp van een door de gebruiker toegewezen beheerde identiteit
Als u problemen ondervindt met betrekking tot authenticatie van de ontwikkelomgeving, zie Problemen met authenticatie van de ontwikkelomgeving oplossen.
Nadat u authenticatie onder de knie hebt, raadpleegt u logboekregistratie configureren in de Azure SDK voor Java voor informatie over de logboekregistratiefunctionaliteit die door de SDK wordt geboden.