Een beheerde identiteit gebruiken
In dit artikel leest u hoe u een beheerde identiteit maakt en gebruikt in Azure Web PubSub.
Belangrijk
Azure Web PubSub kan slechts één beheerde identiteit ondersteunen. U kunt een door het systeem toegewezen identiteit of een door de gebruiker toegewezen identiteit toevoegen.
Een door het systeem toegewezen identiteit toevoegen
Als u een beheerde identiteit wilt instellen in Azure Portal, maakt u een Exemplaar van Azure Web PubSub en schakelt u de functie in.
Maak in Azure Portal een Web PubSub-resource. Ga naar de resource in de portal.
Selecteer Identiteit in het linkermenu.
Selecteer het tabblad Systeem toegewezen en stel vervolgens Status in op Aan. Selecteer Opslaan.
Een door de gebruiker toegewezen identiteit toevoegen
Als u een Web PubSub-resource wilt maken met behulp van een door de gebruiker toegewezen identiteit, maakt u de identiteit en voegt u vervolgens de resource-id van de identiteit toe aan uw service.
Maak een door de gebruiker toegewezen beheerde identiteitresource.
Maak in Azure Portal een Web PubSub-resource. Ga naar de resource in de portal.
Selecteer Identiteit in het linkermenu.
Selecteer het tabblad Gebruiker toegewezen en selecteer vervolgens Toevoegen.
Zoek de identiteit die u hebt gemaakt en selecteer deze. Selecteer Toevoegen.
Een beheerde identiteit gebruiken in client-gebeurtenissenscenario's
Azure Web PubSub is een volledig beheerde service, dus u kunt geen beheerde identiteit gebruiken om handmatig tokens op te halen. Wanneer Web PubSub in plaats daarvan gebeurtenissen naar een gebeurtenishandler verzendt, wordt de beheerde identiteit gebruikt om een toegangstoken op te halen. De service stelt vervolgens het toegangstoken in de Authorization
header van de HTTP-aanvraag in.
Verificatie van beheerde identiteit instellen voor een gebeurtenis-handler
Voeg een door het systeem toegewezen identiteit of een door de gebruiker toegewezen identiteit toe.
Ga naar Hub-instellingen configureren en een upstream gebeurtenis-handler toevoegen of bewerken.
Selecteer Onder Verificatie beheerde identiteit gebruiken en schakel vervolgens het selectievakje Het uitgegeven tokendoelgroep opgeven in. De doelgroep wordt de
aud
claim in het toegangstoken. De claim kan deel uitmaken van de validatie voor uw gebeurtenis-handler.Voor verificatie kunt u een van de volgende opties kiezen:
- Gebruik een bestaande Microsoft Entra-toepassing. De toepassings-id van de toepassing die u kiest, wordt gebruikt.
- Gebruik de URI van de toepassings-id van de service-principal.
Belangrijk
Als u een lege resource gebruikt, krijgt u daadwerkelijk een tokendoel voor Microsoft Graph. Op dit moment maakt Microsoft Graph tokenversleuteling mogelijk, zodat het niet wordt ondersteund voor een toepassing om het token te verifiëren dat anders is dan met Microsoft Graph. U moet altijd een service-principal maken om uw upstream-doel weer te geven. Stel de URI-waarde voor de toepassings-id of toepassings-id in voor de service-principal die u hebt gemaakt.
Verificatie in een Azure Functions-app
U kunt eenvoudig toegangsvalidatie instellen voor een Functions-app zonder codewijzigingen aan te brengen.
Ga in Azure Portal naar de Functions-app.
Selecteer Verificatie in het linkermenu.
Selecteer Een id-provider toevoegen.
Selecteer Microsoft op het tabblad Basisinformatie voor id-provider.
Selecteer Aanmelden met Microsoft Entra-id om actie te ondernemen wanneer de aanvraag niet is geverifieerd.
De optie voor het maken van een nieuwe registratie is standaard geselecteerd. U kunt de naam van de registratie wijzigen. Zie Uw Azure-app Service- of Azure Functions-app configureren voor het gebruik van een Microsoft Entra ID-aanmelding voor meer informatie over het inschakelen van een Microsoft Entra-provider.
Ga naar uw Web PubSub-resource en voeg een door het systeem toegewezen identiteit of een door de gebruiker toegewezen identiteit toe.
Selecteer Instellingen in het linkermenu voor uw Web PubSub-resource.
Selecteer Bewerken om de hubinstellingen te bewerken en selecteer Vervolgens Bewerken om de instellingen van de gebeurtenis-handler te bewerken. Selecteer Beheerde identiteit gebruiken onder Verificatie en schakel het selectievakje Selecteren uit bestaande toepassingen in. Selecteer de toepassing die u hebt gemaakt.
Nadat u deze instellingen hebt geconfigureerd, weigert de Functions-app aanvragen die geen toegangstoken in de header hebben.
Een toegangstoken valideren
Als u de functie Web Apps van Azure-app Service of Azure Functions niet gebruikt, kunt u het token ook valideren.
Het token in de Authorization
header is een toegangstoken voor het Microsoft Identity Platform.
Als u een toegangstoken wilt valideren, moet uw app ook de doelgroep en het ondertekeningstoken valideren. Ondertekeningstokens moeten worden gevalideerd op basis van de waarden in het OpenID-detectiedocument. Zie de tenantonafhankelijke versie van het document voor een voorbeeld.
Microsoft Entra middleware heeft ingebouwde mogelijkheden voor het valideren van toegangstokens. U kunt door onze voorbeelden bladeren om er een te vinden die is geschreven in de taal die u wilt gebruiken.
We bieden bibliotheken en codevoorbeelden die u laten zien hoe u tokenvalidatie kunt verwerken. Er zijn ook verschillende opensource-partnerbibliotheken beschikbaar voor JSON-webtokenvalidatie (JWT). Er is ten minste één optie voor bijna elk platform en elke taal. Zie Microsoft Identity Platform-verificatiebibliotheken voor meer informatie over Microsoft Entra-autorisatiebibliotheken en codevoorbeelden.
Als de gebeurtenis-handler hosts in Azure Functions of Web Apps is, is het eenvoudig om microsoft Entra-aanmelding te configureren.
Een beheerde identiteit gebruiken voor een sleutelkluisverwijzing
Web PubSub heeft toegang tot een sleutelkluis om een geheim op te halen met behulp van een beheerde identiteit.
Voeg een door het systeem toegewezen identiteit of een door de gebruiker toegewezen identiteit toe voor Azure Web PubSub.
Verken in de sleutelkluis geheime leesmachtigingen voor de beheerde identiteit met behulp van toegangsbeleid. Zie Toegangsbeleid voor key vault toewijzen in Azure Portal voor meer informatie.
Deze functie kan momenteel worden gebruikt in het volgende scenario:
- Gebruik de syntaxis
{@Microsoft.KeyVault(SecretUri=<secret-identity>)}
om geheimen op te halen uit een sleutelkluis in de url-sjablooninstelling van de gebeurtenishandler.