Quickstart: Gebruikers aanmelden in een voorbeeldweb-app
Artikel
In deze quickstart gebruikt u een voorbeeldweb-app om u te laten zien hoe u gebruikers aanmeldt en Microsoft Graph API aanroept in uw personeelstenant. De voorbeeld-app maakt gebruik van de Microsoft Authentication Library voor het afhandelen van verificatie.
Voordat u begint, gebruikt u de Kies een tenanttype selector boven aan deze pagina om het tenanttype te selecteren. Microsoft Entra ID biedt twee tenantconfiguraties, werknemers en externe. Een tenantconfiguratie voor werknemers is bedoeld voor uw werknemers, interne apps en andere organisatieresources. Een externe tenant is bedoeld voor uw klantgerichte apps.
Dit Azure-account moet machtigingen hebben voor het beheren van toepassingen. Een van de volgende Microsoft Entra-rollen omvat de vereiste machtigingen:
Maak een clientgeheim voor de geregistreerde toepassing. De toepassing gebruikt het clientgeheim om de identiteit te bewijzen wanneer er tokens worden aangevraagd:
Selecteer op de pagina App-registraties de toepassing die u hebt gemaakt (zoals webapp client secret) om de pagina Overzicht te openen.
Selecteer onder BeherenCertificaten & geheimen>Clientgeheimen>Nieuw clientgeheim.
Voer in het vak Beschrijving een beschrijving in voor het clientgeheim (bijvoorbeeld clientgeheim van de web-app).
Selecteer onder Verlooptde duur waarvoor het geheim geldig is (volgens de beveiligingsregels van uw organisatie) en klik vervolgens op Toevoegen.
Noteer de waarde van geheim . U gebruikt deze waarde voor configuratie in een latere stap. De geheime waarde wordt niet opnieuw weergegeven en kan op geen enkele manier worden opgehaald nadat u weg navigeert van de Certificaten en geheimen. Zorg ervoor dat u deze opneemt.
Als u een certificaatreferentie voor uw web-app wilt gebruiken, moet u het certificaat maken en vervolgens uploaden. Voor testdoeleinden kunt u een zelfondertekend certificaat gebruiken. Gebruik de volgende stappen om een zelfondertekend certificaat te maken en te uploaden:
Navigeer met behulp van uw terminal naar een map van uw keuze en maak vervolgens het zelfondertekende certificaat met behulp van de volgende opdracht.
Ga terug naar het Microsoft Entra-admincentrum en selecteer onder BeheerCertificaten & Geheimen>Certificaat uploaden.
Selecteer het tabblad Certificaten (0) en selecteer vervolgens Certificaat uploaden.
Er wordt een deelvenster Certificaat uploaden weergegeven. Gebruik het pictogram om naar het certificaatbestand te gaan dat u in de vorige stap hebt gemaakt en selecteer openen.
Voer een beschrijving in voor het certificaat, bijvoorbeeld Certificaat voor aspnet-web-app-en selecteer Toevoegen.
Noteer de vingerafdruk waarde voor gebruik in de volgende stap.
Maak een clientgeheim voor de geregistreerde toepassing. De toepassing gebruikt het clientgeheim om de identiteit te bewijzen wanneer er tokens worden aangevraagd:
Selecteer op de pagina App-registraties de toepassing die u hebt gemaakt (zoals clientgeheim voor web-apps) om de pagina Overzicht te openen.
Selecteer onder BeherenCertificaten, & geheimen>Clientgeheimen>Nieuw clientgeheim.
Voer in het vak Beschrijving een beschrijving in voor het clientgeheim (bijvoorbeeld clientgeheim van de web-app).
Selecteer onder verloopteen duur waarvoor het geheim geldig is (volgens de beveiligingsregels van uw organisatie) en selecteer vervolgens Toevoegen.
Noteer de waarde van het geheim. U gebruikt deze waarde voor configuratie in een latere stap. De geheime waarde wordt niet opnieuw weergegeven en kan op geen enkele manier worden opgehaald nadat u weg navigeert van de Certificaten en geheimen. Zorg ervoor dat u deze opneemt.
Wanneer u referentiegegevens aanmaakt voor een vertrouwelijke clientapplicatie:
Voor testdoeleinden kunt u een zelfondertekend certificaat maken en uw apps configureren om ermee te verifiëren.
in productie-moet u echter een certificaat kopen dat is ondertekend door een bekende certificeringsinstantie en vervolgens Azure Key Vault- gebruiken om de toegang tot certificaten en levensduur te beheren.
Voorbeeldwebtoepassing klonen of downloaden
Als u de voorbeeldtoepassing wilt verkrijgen, kunt u deze klonen vanuit GitHub of downloaden als een .zip-bestand.
Download het .zip bestanden pak het uit naar een bestandspad waarin de lengte van de naam minder dan 260 tekens is of kloon de opslagplaats:
Als u het voorbeeld wilt klonen, opent u een opdrachtprompt en navigeert u naar de locatie waar u het project wilt maken en voert u de volgende opdracht in:
Download het .zip bestanden pak het uit naar een bestandspad waarin de lengte van de naam minder dan 260 tekens is of kloon de opslagplaats:
Als u het voorbeeld wilt klonen, opent u een opdrachtprompt en navigeert u naar de locatie waar u het project wilt maken en voert u de volgende opdracht in:
Download het Python-codevoorbeeld pak het vervolgens uit naar een bestandspad waarin de lengte van de naam minder dan 260 tekens is of kloon de opslagplaats:
Als u het voorbeeld wilt klonen, opent u een opdrachtprompt en navigeert u naar de locatie waar u het project wilt maken en voert u de volgende opdracht in:
Open in uw IDE de projectmap ms-identity-docs-code-dotnet\web-app-aspnet, met het voorbeeld.
Open appsettings.json en vervang de bestandsinhoud door het volgende codefragment;
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"TenantId": "Enter the tenant ID obtained from the Microsoft Entra admin center",
"ClientId": "Enter the client ID obtained from the Microsoft Entra admin center",
"ClientCertificates": [
{
"SourceType": "StoreWithThumbprint",
"CertificateStorePath": "CurrentUser/My",
"CertificateThumbprint": "Enter the certificate thumbprint obtained the Microsoft Entra admin center"
}
],
"CallbackPath": "/signin-oidc"
},
"DownstreamApi": {
"BaseUrl": "https://graph.microsoft.com/v1.0/",
"RelativePath": "me",
"Scopes": [
"user.read"
]
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*"
}
TenantId: de id van de tenant waar de toepassing is geregistreerd. Vervang de tekst tussen aanhalingstekens door de Directory (tenant) ID die eerder is vastgelegd op de overzichtspagina van de geregistreerde toepassing.
ClientId : de id van de toepassing, ook wel de client genoemd. Vervang de tekst tussen aanhalingstekens door de Application (client) ID waarde die eerder is vastgelegd op de overzichtspagina van de geregistreerde toepassing.
ClientCertificates: er wordt een zelfondertekend certificaat gebruikt voor verificatie in de toepassing. Vervang de tekst van de CertificateThumbprint door de vingerafdruk van het certificaat dat eerder is vastgelegd.
Open de toepassing die u hebt gedownload in een IDE en navigeer naar de hoofdmap van de voorbeeld-app.
cd flask-web-app
Maak een .env-bestand in de hoofdmap van het project met behulp van .env.sample als richtlijn.
# The following variables are required for the app to run.
CLIENT_ID=<Enter_your_client_id>
CLIENT_SECRET=<Enter_your_client_secret>
AUTHORITY=<Enter_your_authority_url>
Stel de waarde van CLIENT_ID in op de applicatie-id (client-id) voor de geregistreerde toepassing, die beschikbaar is op de overzichtspagina.
Stel de waarde van CLIENT_SECRET in op het clientgeheim dat u hebt gemaakt in de Certificates & Secrets voor de geregistreerde toepassing.
Stel de waarde van AUTHORITY in op een https://login.microsoftonline.com/<TENANT_GUID>. De Directory-id (tenant) is beschikbaar op de overzichtspagina van de app-registratie.
Er wordt in app_config.pynaar de omgevingsvariabelen verwezen en in een afzonderlijk .env--bestand bewaard om ze buiten broncodebeheer te houden. Het opgegeven bestand .gitignore voorkomt dat het .env--bestand wordt ingecheckt.
Voorbeeld-web-app uitvoeren en testen
U hebt uw voorbeeld-app geconfigureerd. U kunt doorgaan met uitvoeren en testen.
Voer de volgende opdrachten uit vanuit de projectmap om de server te starten:
cd App
npm install
npm start
Ga naar http://localhost:3000/.
Klik op Aanmelden om het aanmeldingsproces te starten.
De eerste keer dat u zich aanmeldt, wordt u gevraagd uw toestemming te geven om de toepassing toe te staan u aan te melden en toegang te krijgen tot uw profiel. Nadat u bent aangemeld, wordt u teruggeleid naar de startpagina van de toepassing.
Hoe de app werkt
Het voorbeeld fungeert als host voor een webserver op localhost, poort 3000. Wanneer een webbrowser dit adres opent, wordt de startpagina weergegeven in de app. Zodra de gebruiker Aanmeldenselecteert, wordt de browser omgeleid naar het aanmeldingsscherm van Microsoft Entra via de URL die is gegenereerd door de MSAL Node-bibliotheek. Nadat de gebruiker toestemming heeft gegeven, leidt de browser de gebruiker terug naar de startpagina van de toepassing, samen met een id en toegangstoken.
Gebruik de terminal in uw projectmap om de volgende opdracht in te voeren;
dotnet run
Kopieer de https-URL die wordt weergegeven in de terminal, bijvoorbeeld https://localhost:5001en plak deze in een browser. U wordt aangeraden een privé- of incognitobrowsersessie te gebruiken.
Volg de stappen en voer de benodigde gegevens in om u aan te melden met uw Microsoft-account. U wordt gevraagd een e-mailadres op te geven, zodat een eenmalige wachtwoordcode naar u kan worden verzonden. Voer de code in wanneer u hierom wordt gevraagd.
De toepassing vraagt toestemming om toegang te behouden tot de gegevens waartoe u eerder toegang hebt verleend, en om u aan te melden en uw profiel te lezen. Selecteer Accepteren. De volgende schermopname wordt weergegeven. Het geeft aan dat u bent aangemeld bij de toepassing en uw profielgegevens bekijkt vanuit de Microsoft Graph API.
Afmelden bij de toepassing
Zoek de koppeling Afmelden in de rechterbovenhoek van de pagina en selecteer deze.
U wordt gevraagd een account te kiezen om u af te melden. Selecteer het account dat u hebt gebruikt om u aan te melden.
Er verschijnt een bericht dat aangeeft dat u bent afgemeld. U kunt nu het browservenster sluiten.
Maak een virtuele omgeving voor de app:
Voer voor Windowsde volgende opdrachten uit:
py -m venv .venv
.venv\scripts\activate
Voer voor macOS-/Linux-de volgende opdrachten uit:
python3 -m venv .venv
source .venv/bin/activate
Installeer de vereisten met behulp van pip:
pip install -r requirements.txt
Voer de app uit vanaf de command line. Zorg ervoor dat uw app wordt uitgevoerd op dezelfde poort als de omleidings-URI die u eerder hebt geconfigureerd.
flask run --debug --host=localhost --port=5000
Kopieer de https-URL die wordt weergegeven in de terminal, bijvoorbeeld https://localhost:5000en plak deze in een browser. U wordt aangeraden een privé- of incognitobrowsersessie te gebruiken.
Volg de stappen en voer de benodigde gegevens in om u aan te melden met uw Microsoft-account. U wordt gevraagd een e-mailadres en wachtwoord op te geven om u aan te melden.
De toepassing vraagt toestemming om de toegang tot gegevens te behouden waar u toegang tot hebt en om u aan te melden en vervolgens uw profiel te lezen, zoals wordt weergegeven in de schermopname. Selecteer Accepteren.
De volgende schermopname wordt weergegeven, waarmee wordt aangegeven dat u zich hebt aangemeld bij de toepassing.
Hoe de app werkt
In het volgende diagram ziet u hoe de voorbeeld-app werkt:
De toepassing maakt gebruik van het identity-pakket om een toegangstoken te verkrijgen van het Microsoft Identity Platform. Dit pakket is gebouwd boven op de Microsoft Authentication Library (MSAL) voor Python om verificatie en autorisatie in web-apps te vereenvoudigen.
Het toegangstoken dat u in de vorige stap verkrijgt, wordt gebruikt als bearer-token om de gebruiker te verifiëren bij het aanroepen van de Microsoft Graph API.
In deze quickstart gebruikt u een voorbeeldweb-app om u te laten zien hoe u gebruikers in uw externe tenant kunt aanmelden. De voorbeeld-app maakt gebruik van de Microsoft Authentication Library voor het afhandelen van verificatie.
Voordat u begint, gebruikt u de Kies een tenanttype selector boven aan deze pagina om het tenanttype te selecteren. Microsoft Entra ID biedt twee tenantconfiguraties, werknemers en externe. Een tenantconfiguratie voor werknemers is bedoeld voor uw werknemers, interne apps en andere organisatieresources. Een externe tenant is bedoeld voor uw klantgerichte apps.
Dit Azure-account moet machtigingen hebben voor het beheren van toepassingen. Een van de volgende Microsoft Entra-rollen omvat de vereiste machtigingen:
Toepassingsbeheerder
Toepassingsontwikkelaar
Cloudtoepassingsbeheerder
Een externe tenant. Kies een van de volgende methoden om er een te maken:
Maak een clientgeheim voor de geregistreerde toepassing. De toepassing gebruikt het clientgeheim om de identiteit te bewijzen wanneer er tokens worden aangevraagd:
Selecteer op de pagina App-registraties de toepassing die u hebt gemaakt (zoals clientgeheim voor web-apps) om de pagina Overzicht te openen.
Selecteer onder BeherenCertificaten & Geheimen>Clientgeheimen>Nieuw clientgeheim.
Voer in het vak Beschrijving een beschrijving in voor het clientgeheim (bijvoorbeeld clientgeheim van de web-app).
Selecteer onder verloopteen duur waarvoor het geheim geldig is (volgens de beveiligingsregels van uw organisatie) en selecteer vervolgens Toevoegen.
Noteer de waarde van het geheim. U gebruikt deze waarde voor configuratie in een latere stap. De geheime waarde wordt niet opnieuw weergegeven en kan op geen enkele manier worden opgehaald nadat u weg navigeert van de Certificaten en geheimen. Zorg ervoor dat u deze opneemt.
Wanneer u referentiegegevens aanmaakt voor een vertrouwelijke klanttoepassing:
Voor testdoeleinden kunt u een zelfondertekend certificaat maken en uw apps configureren om ermee te verifiëren.
in productie-moet u echter een certificaat aanschaffen dat is ondertekend door een bekende certificeringsinstantie, en vervolgens Azure Key Vault- gebruiken om de toegang tot certificaten en de levensduur te beheren.
Beheerderstoestemming verlenen
Nadat u uw toepassing hebt geregistreerd, wordt de machtiging User.Read toegewezen. Omdat de tenant echter een externe tenant is, kunnen de gebruikers van de klant zelf geen toestemming geven voor deze machtiging. U als tenantbeheerder moet toestemming geven voor deze machtiging namens alle gebruikers in de tenant:
Selecteer op de pagina App-registraties de toepassing die u hebt gemaakt (zoals ciam-client-app) om de pagina Overzicht te openen.
Selecteer onder BeherenAPI machtigingen.
Selecteer Beheerderstoestemming verlenen voor <uw tenantnaam>en selecteer vervolgens Ja.
Selecteer Vernieuwenen controleer of verleend voor <uw tenantnaam> wordt weergegeven onder Status voor de machtiging.
Als u de voorbeeldtoepassing wilt verkrijgen, kunt u deze klonen vanuit GitHub of downloaden als een .zip-bestand:
Als u het voorbeeld wilt klonen, opent u een opdrachtprompt en navigeert u naar de locatie waar u het project wilt maken en voert u de volgende opdracht in:
Als alternatief het voorbeeldbestand .zip downloadenen vervolgens uitpakken naar een bestandspad waarin de lengte van de naam minder dan 260 tekens is.
Projectafhankelijkheden installeren
Open een consolevenster en ga naar de map met de Node.js voorbeeld-app:
cd 1-Authentication\5-sign-in-express\App
Voer de volgende opdrachten uit om app-afhankelijkheden te installeren:
npm install
Als u de voorbeeldtoepassing wilt verkrijgen, kunt u deze klonen vanuit GitHub of downloaden als een .zip-bestand.
Als u het voorbeeld wilt klonen, opent u een opdrachtprompt en navigeert u naar de locatie waar u het project wilt maken en voert u de volgende opdracht in:
Download het .zip bestand. Pak het uit naar een bestandspad waarbij de lengte van de naam minder dan 260 tekens is.
Als u de voorbeeldtoepassing wilt verkrijgen, kunt u deze klonen vanuit GitHub of downloaden als een .zip-bestand.
Als u het voorbeeld wilt klonen, opent u een opdrachtprompt en navigeert u naar de locatie waar u het project wilt maken en voert u de volgende opdracht in:
Download het .zip bestand. Pak het uit naar een bestandspad waarbij de lengte van de naam minder dan 260 tekens is.
Projectafhankelijkheden installeren
Open een consolevenster en ga naar de map met de Flask-voorbeeldweb-app:
cd django-web-app
Virtuele omgeving instellen:
Voer voor Windowsde volgende opdrachten uit:
py -m venv .venv
.venv\scripts\activate
Voer voor macOS-/Linux-de volgende opdrachten uit:
python3 -m venv .venv
source .venv/bin/activate
Voer de volgende opdrachten uit om app-afhankelijkheden te installeren:
python3 -m pip install -r requirements.txt
Als u de voorbeeldtoepassing wilt verkrijgen, kunt u deze klonen vanuit GitHub of downloaden als een .zip-bestand.
Als u het voorbeeld wilt klonen, opent u een opdrachtprompt en navigeert u naar de locatie waar u het project wilt maken en voert u de volgende opdracht in:
In uw code-editor, open het App\authConfig.js-bestand.
Zoek de tijdelijke aanduiding:
Enter_the_Application_Id_Here en vervang deze door de toepassings-id (client) van de app die u eerder hebt geregistreerd.
Enter_the_Tenant_Subdomain_Here en vervang dit door het subdomein Directory (tenant). Als uw primaire tenantdomein bijvoorbeeld is contoso.onmicrosoft.com, gebruikt u contoso. Als u uw tenantnaam niet hebt, leert u hoe u uw tenantgegevens kunt lezen.
Enter_the_Client_Secret_Here en vervang deze door de waarde van het app-geheim die u eerder hebt gekopieerd.
Navigeer naar de hoofdmap met de ASP.NET Core-voorbeeld-app:
cd 1-Authentication\1-sign-in-aspnet-core-mvc
Open het bestand appsettings.json.
Zoek in AuthorityEnter_the_Tenant_Subdomain_Here en vervang deze door het subdomein van uw tenant. Als uw primaire tenantdomein bijvoorbeeld is caseyjensen@onmicrosoft.com, is de waarde die u moet invoeren casyjensen.
Zoek de waarde Enter_the_Application_Id_Here en vervang deze door de toepassings-id (clientId) van de app die u hebt geregistreerd in het Microsoft Entra-beheercentrum.
Vervang Enter_the_Client_Secret_Here door de waarde van het clientgeheim die u hebt ingesteld in App-clientgeheim toevoegen.
Open uw projectbestanden in Visual Studio Code of de editor die u gebruikt.
Maak een .env-bestand in de hoofdmap van het project met behulp van .env.sample-bestand als richtlijn.
Geef in het bestand .env de volgende omgevingsvariabelen op:
CLIENT_ID de toepassings-id (client) van de app die u eerder hebt geregistreerd.
CLIENT_SECRET de waarde van het app-geheim die u eerder hebt gekopieerd.
AUTHORITY de URL die een tokeninstantie identificeert. Deze moet de volgende indeling hebben https://{subdomein}.ciamlogin.com/{subdomein}.onmicrosoft.com. Vervang subdomein door het subdomein Directory (tenant). Als uw primaire tenantdomein bijvoorbeeld is contoso.onmicrosoft.com, gebruikt u contoso. Als u uw tenantsubdomein niet hebt, leert u hoe u uw tenantgegevens kunt bekijken.
REDIRECT_URI die vergelijkbaar moet zijn met de omleidings-URI die u eerder hebt geregistreerd, moet overeenkomen met uw configuratie.
Open uw projectbestanden in Visual Studio Code of de editor die u gebruikt.
Maak een .env-bestand in de hoofdmap van het project met behulp van .env.sample-bestand als richtlijn.
Geef in het bestand .env de volgende omgevingsvariabelen op:
CLIENT_ID de toepassings-id (client) van de app die u eerder hebt geregistreerd.
CLIENT_SECRET is de waarde van het app-sleutel die u eerder hebt gekopieerd.
AUTHORITY, dat is de URL die een tokenautoriteit identificeert. Dit moet het formaat hebben https://{subdomein}.ciamlogin.com/{subdomein}.onmicrosoft.com. Vervang subdomein door het subdomein Directory (tenant). Als uw primaire tenantdomein bijvoorbeeld is contoso.onmicrosoft.com, gebruikt u contoso. Als u uw tenantsubdomein niet hebt, leert u hoe u uw tenantgegevens kunt lezen.
Controleer of de omleidings-URI goed is geconfigureerd. De omleidings-URI die u eerder hebt geregistreerd, moet overeenkomen met uw configuratie. In dit voorbeeld wordt standaard het omleidings-URI-pad ingesteld op /getAToken. Deze configuratie bevindt zich in het app_config.py bestand als REDIRECT_PATH.
U kunt nu de voorbeeld-Node.js-web-app testen. U moet de Node.js-server starten en toegankelijk maken via uw browser op http://localhost:3000.
Voer in de terminal de volgende opdracht uit:
npm start
Open uw browser en ga vervolgens naar http://localhost:3000. De pagina ziet er ongeveer als volgt uit:
Nadat de pagina is geladen, selecteert u Aanmelden wanneer hierom wordt gevraagd.
Typ op de aanmeldingspagina uw e-mailadres, selecteer Volgende, typ uw wachtwoorden selecteer Aanmelden. Als u geen account hebt, selecteert u Geen account? Maak één koppeling, waarmee de registratiestroom wordt gestart.
Als u de registratieoptie kiest, voltooit u de volledige aanmeldingsstroom nadat u uw e-mail hebt ingevuld, eenmalige wachtwoordcode, nieuw wachtwoord en meer accountgegevens. U ziet een pagina die vergelijkbaar is met de volgende schermopname. U ziet een vergelijkbare pagina als u de aanmeldingsoptie kiest.
Selecteer Afmelden om de gebruiker af te melden bij de web-app of selecteer Id-tokenclaims weergeven om id-tokenclaims weer te geven die door Microsoft Entra worden geretourneerd.
Hoe het werkt
Wanneer gebruikers de koppeling Aanmelden selecteren, initieert de app een verificatieaanvraag en worden gebruikers omgeleid naar externe Microsoft Entra-id. Op de aanmeldings- of registratiepagina die wordt weergegeven, wanneer een gebruiker zich heeft aangemeld of een account maakt, retourneert Microsoft Entra External ID een id-token naar de app. De app valideert het id-token, leest de claims en retourneert een beveiligde pagina aan de gebruikers.
Wanneer de gebruikers de koppeling Afmelden selecteren, wordt de sessie gewist en wordt de gebruiker omgeleid naar het afmeldingseindpunt van Microsoft Entra External ID om te melden dat de gebruiker zich heeft afgemeld.
Voer vanuit uw shell of opdrachtregel de volgende opdrachten uit:
dotnet run
Open uw webbrowser en navigeer naar https://localhost:7274.
Meld u aan met een account dat is geregistreerd bij de externe tenant.
Nadat u bent aangemeld, wordt de weergavenaam weergegeven naast de knop Afmelden, zoals wordt weergegeven in de volgende schermopname.
Als u zich wilt afmelden bij de toepassing, selecteert u de knop Afmelden.
Start de app om de inlogervaring in actie te zien.
Notitie
In dit voorbeeld wordt gebruikgemaakt van de externe Python-identiteitsbibliotheek . De bibliotheek wordt niet officieel onderhouden door Microsoft, maar wordt aanbevolen voor uw gebruik. Met deze bibliotheek kunt u eenvoudiger verificatie toevoegen aan uw web-app, omdat hiermee veel MSAL Python-details worden geabstraheerd.
Voer in de terminal de volgende opdracht uit:
python manage.py runserver localhost:5000
U kunt een poortnummer van uw keuze gebruiken.
Open uw browser en ga vervolgens naar http://localhost:5000. U zou een pagina moeten zien die lijkt op de volgende schermafbeelding:
Nadat de pagina is geladen, selecteert u de koppeling Aanmelden. U wordt gevraagd u aan te melden.
Typ op de aanmeldingspagina uw e-mailadres, selecteer Volgende, typ uw wachtwoorden selecteer Aanmelden. Als u geen account hebt, selecteert u Geen account? Maak één koppeling, waarmee de registratiestroom wordt gestart.
Als u de registratieoptie kiest, doorloopt u het registratieproces. Vul uw e-mail, eenmalige wachtwoordcode, nieuw wachtwoord en meer accountgegevens in om de volledige aanmeldingsstroom te voltooien.
Nadat u zich hebt aangemeld of zich hebt geregistreerd, wordt u teruggeleid naar de web-app. U ziet een pagina die er ongeveer als volgt uitziet:
Selecteer afmelden om de gebruiker af te melden bij de web-app of selecteer Een downstream-API aanroepen om een microsoft Graph-eindpunt aan te roepen.
Hoe het werkt
Wanneer gebruikers de koppeling Aanmelden selecteren, initieert de app een verificatieaanvraag en worden gebruikers omgeleid naar externe Microsoft Entra-id. Een gebruiker meldt zich vervolgens aan of registreert zich op de pagina die verschijnt. Nadat u de vereiste referenties hebt opgegeven en toestemming hebt gegeven voor de vereiste access scopes, stuurt Microsoft Entra External ID de gebruiker terug naar de webapp met een autorisatiecode. De web-app gebruikt vervolgens deze autorisatiecode om een token te verkrijgen van externe Microsoft Entra-id.
Wanneer de gebruikers de afmeldingskoppeling selecteren, wist de app de sessie en leidt de gebruiker om naar het afmeldingseindpunt van Microsoft Entra External ID om te melden dat de gebruiker is afgemeld. De gebruiker wordt vervolgens teruggeleid naar de web-app.
Voer de app uit om de aanmeldervaring in actie te zien.
Notitie
Dit voorbeeld maakt gebruik van de externe bibliotheek voor de Python-identiteit. De bibliotheek wordt niet officieel onderhouden door Microsoft, maar wordt aanbevolen voor uw gebruik. Met deze bibliotheek kunt u eenvoudiger verificatie toevoegen aan uw web-app, omdat hiermee veel MSAL Python-details worden geabstraheerd.
Voer in de terminal de volgende opdracht uit:
python3 -m flask run --debug --host=localhost --port=3000
U kunt de poort van uw keuze gebruiken. Dit moet vergelijkbaar zijn met de poort van de omleidings-URI die u eerder hebt geregistreerd.
Open uw browser en ga vervolgens naar http://localhost:3000. De pagina ziet er ongeveer als volgt uit:
Nadat de pagina is geladen, selecteert u de koppeling Aanmelden. U wordt gevraagd u aan te melden.
Typ op de aanmeldingspagina uw e-mailadres, selecteer Volgende, typ uw wachtwoorden selecteer Aanmelden. Als u geen account hebt, selecteert u Geen account? Maak één koppeling, waarmee de registratiestroom wordt gestart.
Als u de registreeroptie kiest, doorloopt u het registratieproces. Vul uw e-mail, eenmalige wachtwoordcode, nieuw wachtwoord en meer accountgegevens in om de volledige registratiestroom te voltooien.
Nadat u zich hebt aangemeld of zich hebt geregistreerd, wordt u teruggeleid naar de web-app. U ziet een pagina die er ongeveer als volgt uitziet:
Selecteer afmelden om de gebruiker af te melden bij de web-app of selecteer Een downstream-API aanroepen om een microsoft Graph-eindpunt aan te roepen.
Hoe het werkt
Wanneer gebruikers de koppeling Aanmelden selecteren, initieert de app een verificatieaanvraag en worden gebruikers omgeleid naar externe Microsoft Entra-id. Een gebruiker meld zich vervolgens aan of registreert zich op de pagina die wordt weergegeven. Nadat u de vereiste inloggegevens hebt opgegeven en toestemming hebt gegeven voor de benodigde machtigingen, stuurt Microsoft Entra External ID de gebruiker terug naar de web-app met een autorisatiecode. De web-app gebruikt vervolgens deze autorisatiecode om een token te verkrijgen van externe Microsoft Entra-id.
Wanneer de gebruikers de afmeldingskoppeling selecteren, wist de app de sessie en leidt de gebruiker om naar het afmeldingseindpunt van Microsoft Entra External ID om te bevestigen dat de gebruiker zich heeft afgemeld. De gebruiker wordt vervolgens teruggeleid naar de webapp.