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.
In deze quickstart downloadt u een codevoorbeeld en voert u dit uit. Het codevoorbeeld laat zien hoe gebruikers kunnen worden aangemeld met een UWP-toepassing (Universeel Windows-platform), en een toegangstoken kunnen krijgen om de Microsoft Graph API aan te roepen.
Zie Hoe het voorbeeld werkt voor een afbeelding.
Vereisten
- Een Azure-account met een actief abonnement. Maak gratis een account.
- Visual Studio
Notitie
MSAL.NET versies 4.61.0 en hoger bieden geen ondersteuning voor Universeel Windows-platform (UWP), Xamarin Android en Xamarin iOS. U wordt aangeraden uw UWP-toepassingen te migreren naar moderne frameworks zoals WINUI. Lees meer over de afschaffing in Aankondiging van de geplande afschaffing van MSAL.NET voor Xamarin en UWP.
De snelstart-app registreren en downloaden
U hebt twee opties voor het starten van de snelstarttoepassing:
- [Express] Optie 1: Uw app registreren en automatisch configureren en vervolgens het codevoorbeeld downloaden
- [Handmatig] Optie 2: Uw toepassing en codevoorbeeld registreren en handmatig configureren
Optie 1: registreer de toepassing en laat deze automatisch configureren. Download vervolgens het codevoorbeeld
- Ga naar het AMicrosoft Entra-beheercentrum - Quickstart voor app-registraties .
- Voer een naam in voor uw toepassing en selecteer Registreren.
- Volg de instructies om de nieuwe toepassing te downloaden en automatisch te configureren.
Optie 2: registreer de toepassing en configureer handmatig de toepassing en het codevoorbeeld
Stap 1: Uw toepassing registreren
Volg deze stappen om de toepassing te registreren en de registratiegegevens van de app toe te voegen aan de oplossing:
- Meld u aan bij het Microsoft Entra-beheercentrum.
- Als u toegang hebt tot meerdere tenants, gebruikt u het pictogram
Instellingen in het bovenste menu om over te schakelen naar de tenant waarin u de toepassing wilt registreren in het menu Mappen en abonnementen. - Blader naar Entra> en selecteer Nieuwe registratie.
- Voer bijvoorbeeld een
UWP-App-calling-MsGraphin voor uw toepassing. Gebruikers van uw app kunnen de naam zien. U kunt deze later wijzigen. - Selecteer in de sectie Ondersteunde accounttypenaccounts in een organisatiedirectory en persoonlijke Microsoft-accounts (bijvoorbeeld Skype, Xbox, Outlook.com).
- Selecteer Registreren om de toepassing te maken en noteer vervolgens de toepassings-id (client) voor gebruik in een latere stap.
- Selecteer Verificatie onder Beheren.
- Selecteer Een platform>toevoegen voor mobiele toepassingen en desktoptoepassingen.
- Selecteer onder Omleidings-URI's de optie
https://login.microsoftonline.com/common/oauth2/nativeclient. - Selecteer Configureren.
Stap 2: Het project downloaden
De UWP-voorbeeldtoepassing downloaden
Aanbeveling
nl-NL: Om fouten te voorkomen die worden veroorzaakt door padlengtebeperkingen in Windows, raden we u aan het archief te extraheren of de opslagplaats te klonen in een map dicht bij de hoofdmap van uw schijf.
Stap 3: het project configureren
Pak het zip-archief uit in een lokale map dicht bij de hoofdmap van uw schijf. Bijvoorbeeld in C:\Azure-Samples.
Open het project in Visual Studio. Installeer de ontwikkelworkload voor universeel Windows-platform en eventuele afzonderlijke SDK-onderdelen als hierom wordt gevraagd.
Wijzig in MainPage.Xaml.cs de waarde van de
ClientIdvariabele in de toepassings-id (client) van de toepassing die u eerder hebt geregistreerd.private const string ClientId = "Enter_the_Application_Id_here";U vindt de toepassings-id (client) in het deelvenster Overzicht van de app in het Microsoft Entra-beheercentrum (Entra>>{Uw app-registratie}).
Maak en selecteer vervolgens een nieuw zelfondertekend testcertificaat voor het pakket:
- Dubbelklik in Solution Explorer op het bestand Package.appxmanifest .
- Selecteer Verpakking>Certificaat kiezen...>Aanmaken....
- Voer een wachtwoord in en selecteer VERVOLGENS OK. Er wordt een certificaat met de naam Native_UWP_V2_TemporaryKey.pfx gemaakt.
- Selecteer OK om het dialoogvenster Een certificaat kiezen te sluiten en controleer of u Native_UWP_V2_TemporaryKey.pfx in Solution Explorer ziet.
- Klik in Solution Explorer met de rechtermuisknop op het Native_UWP_V2 project en selecteer Eigenschappen.
- Selecteer Ondertekenen en selecteer vervolgens het .pfx-bestand dat u hebt gemaakt in de vervolgkeuzelijst Sterke-naamsleutelbestand kiezen.
Stap 4: De toepassing uitvoeren
Om de voorbeeldtoepassing uit te voeren op uw lokale computer:
Kies in de Visual Studio-werkbalk het juiste platform (waarschijnlijk x64 of x86, niet ARM). Het doelapparaat moet worden gewijzigd van apparaat naar lokale computer.
Selecteer Foutopsporing>starten zonder foutopsporing.
Als u hierom wordt gevraagd, moet u mogelijk eerst de ontwikkelaarsmodus inschakelen en vervolgens opnieuw starten zonder foutopsporing om de app te starten.
Wanneer het venster van de app wordt weergegeven, kunt u de knop Microsoft Graph API aanroepen selecteren, uw referenties invoeren en toestemming geven voor de machtigingen die door de toepassing zijn aangevraagd. Als dit lukt, worden in de toepassing bepaalde tokengegevens en andere gegevens weergegeven die zijn verkregen van de aanroep van de Microsoft Graph-API.
Hoe het voorbeeld werkt
MSAL.NET
MSAL (Microsoft.Identity.Client) is de bibliotheek die wordt gebruikt om gebruikers aan te melden en beveiligingstokens aan te vragen. De beveiligingstokens worden gebruikt voor toegang tot een API die wordt beveiligd door het Microsoft Identity Platform. U kunt MSAL installeren door de volgende opdracht uit te voeren in de Package Manager-console van Visual Studio:
Install-Package Microsoft.Identity.Client
MSAL initialiseren
U kunt de verwijzing voor MSAL toevoegen door de volgende code toe te voegen:
using Microsoft.Identity.Client;
Vervolgens wordt MSAL geïnitialiseerd met de volgende code:
public static IPublicClientApplication PublicClientApp;
PublicClientApp = PublicClientApplicationBuilder.Create(ClientId)
.WithRedirectUri("https://login.microsoftonline.com/common/oauth2/nativeclient")
.Build();
De waarde is ClientId de toepassings-id (client) van de app die u hebt geregistreerd in het Microsoft Entra-beheercentrum. U vindt deze waarde op de overzichtspagina van de app in het Microsoft Entra-beheercentrum.
Tokens aanvragen
MSAL biedt twee methoden om tokens in een UWP-app te verkrijgen: AcquireTokenInteractive en AcquireTokenSilent.
Haal interactief een gebruikerstoken op
In sommige situaties is het nodig om gebruikers via een pop-upvenster te dwingen het Microsoft-identiteitsplatform te gebruiken om hun referenties te valideren of om toestemming te geven. Enkele voorbeelden:
- De eerste keer dat gebruikers zich aanmelden bij de toepassing
- Wanneer gebruikers mogelijk hun referenties opnieuw moeten opgeven omdat het wachtwoord is verlopen
- Wanneer via de toepassing toegang wordt aangevraagd tot een resource waarvoor de gebruiker toestemming moet geven
- Wanneer tweeledige verificatie is vereist
authResult = await PublicClientApp.AcquireTokenInteractive(scopes)
.ExecuteAsync();
De parameter scopes bevat de bereiken die worden aangevraagd, zoals { "user.read" } voor Microsoft Graph of { "api://<Application ID>/access_as_user" } voor aangepaste web-API's.
Een gebruikerstoken stilletjes ophalen
Gebruik de methode AcquireTokenSilent om tokens op te halen voor toegang tot beveiligde resources na de eerste methode AcquireTokenInteractive. U wilt niet dat de gebruiker elke keer dat hij of zij toegang nodig heeft tot een bron, zijn of haar credentials moet laten valideren. In de meeste gevallen wilt u tokens ophalen en verlengen zonder tussenkomst van de gebruiker
var accounts = await PublicClientApp.GetAccountsAsync();
var firstAccount = accounts.FirstOrDefault();
authResult = await PublicClientApp.AcquireTokenSilent(scopes, firstAccount)
.ExecuteAsync();
-
scopesbevat de scopes die worden aangevraagd, zoals{ "user.read" }voor Microsoft Graph of{ "api://<Application ID>/access_as_user" }voor aangepaste web-API's. -
firstAccountgeeft het eerste gebruikersaccount in de cache op (MSAL biedt ondersteuning voor meerdere gebruikers in één app).
Help en ondersteuning
Als u hulp nodig hebt, een probleem wilt melden of meer wilt weten over uw ondersteuningsopties, raadpleegt u Help en ondersteuning voor ontwikkelaars.
Volgende stappen
Volg de zelfstudie voor Windows-bureaublad voor een volledige stapsgewijze handleiding voor het bouwen van applicaties en het ontwikkelen van nieuwe functies, inclusief een volledige uitleg van deze snelle startgids.