Dela via


Använda en hanterad identitet

Den här artikeln visar hur du skapar och använder en hanterad identitet i Azure Web PubSub.

Viktigt!

Azure Web PubSub har endast stöd för en hanterad identitet. Du kan lägga till antingen en systemtilldelad identitet eller en användartilldelad identitet.

Lägga till en systemtilldelad identitet

Om du vill konfigurera en hanterad identitet i Azure-portalen skapar du en Azure Web PubSub-instans och aktiverar sedan funktionen.

  1. Skapa en Web PubSub-resurs i Azure-portalen. Gå till resursen i portalen.

  2. Välj Identitet på den vänstra menyn.

  3. Välj fliken Systemtilldelat och ange sedan Status till . Välj Spara.

    Skärmbild som visar hur du lägger till en systemtilldelad identitet i Azure-portalen.

Lägga till en användartilldelad identitet

Om du vill skapa en Web PubSub-resurs med hjälp av en användartilldelad identitet skapar du identiteten och lägger sedan till identitetens resursidentifierare i tjänsten.

  1. Skapa en användartilldelad hanterad identitetsresurs.

  2. Skapa en Web PubSub-resurs i Azure-portalen. Gå till resursen i portalen.

  3. Välj Identitet på den vänstra menyn.

  4. Välj fliken Användartilldelade och välj sedan Lägg till.

  5. Sök efter den identitet som du skapade och välj den. Markera Lägga till.

    Skärmbild som visar hur du lägger till en användartilldelad identitet i Azure-portalen.

Använda en hanterad identitet i klienthändelsescenarier

Azure Web PubSub är en fullständigt hanterad tjänst, så du kan inte använda en hanterad identitet för att manuellt hämta token. När Web PubSub i stället skickar händelser till en händelsehanterare använder den den hanterade identiteten för att hämta en åtkomsttoken. Tjänsten anger sedan åtkomsttoken i Authorization huvudet på HTTP-begäran.

Konfigurera hanterad identitetsautentisering för en händelsehanterare

  1. Lägg till en systemtilldelad identitet eller en användartilldelad identitet.

  2. Gå till Konfigurera hubbinställningar och lägg till eller redigera en överordnad händelsehanterare.

    Skärmbild som visar inställningar som ska användas i fönstret Konfigurera hubbinställningar.

  3. Under Autentisering väljer du Använd hanterad identitet och markerar sedan kryssrutan Ange den utfärdade tokenpubliken . Målgruppen blir anspråket aud i åtkomsttoken. Anspråket kan vara en del av verifieringen för händelsehanteraren.

    För autentisering kan du välja något av följande alternativ:

    • Använd ett befintligt Microsoft Entra-program. Program-ID:t för det program du väljer används.
    • Använd program-ID-URI:n för tjänstens huvudnamn.

    Viktigt!

    Om du använder en tom resurs hämtas faktiskt ett tokenmål för Microsoft Graph. För närvarande aktiverar Microsoft Graph tokenkryptering, så det stöds inte för ett program att autentisera token förutom med Microsoft Graph. Du bör alltid skapa ett huvudnamn för tjänsten för att representera ditt överordnade mål. Ange URI-värdet för program-ID eller program-ID för tjänstens huvudnamn som du skapade.

Autentisering i en Azure Functions-app

Du kan enkelt ange åtkomstverifiering för en Functions-app utan att göra kodändringar.

  1. Gå till Functions-appen i Azure-portalen.

  2. Välj Autentisering på den vänstra menyn.

  3. Välj Lägg till en identitetsprovider.

  4. På fliken Grundläggande väljer du Microsoft för Identitetsprovider.

  5. För Åtgärd att vidta när begäran inte har autentiserats väljer du Logga in med Microsoft Entra-ID.

  6. Alternativet för att skapa en ny registrering är valt som standard. Du kan ändra namnet på registreringen. Mer information om hur du aktiverar en Microsoft Entra-provider finns i Konfigurera din Azure App Service- eller Azure Functions-app så att den använder inloggning med Microsoft Entra-ID.

    Skärmbild som visar grundläggande information för att lägga till en identitetsprovider.

  7. Gå till din Web PubSub-resurs och lägg till en systemtilldelad identitet eller en användartilldelad identitet.

  8. Välj Inställningar på den vänstra menyn för din Web PubSub-resurs.

  9. Välj Redigera för att redigera hubbinställningarna och välj sedan Redigera för att redigera inställningarna för händelsehanteraren. Under Autentisering väljer du Använd hanterad identitet och markerar kryssrutan Välj från befintliga program . Välj det program som du skapade.

När du har konfigurerat de här inställningarna avvisar Functions-appen begäranden som inte har en åtkomsttoken i huvudet.

Verifiera en åtkomsttoken

Om du inte använder funktionen Web Apps i Azure App Service eller Azure Functions kan du även verifiera token.

Token i Authorization huvudet är en Microsoft platforma za identitete åtkomsttoken.

För att verifiera en åtkomsttoken bör appen även verifiera målgruppen och signeringstoken. Signeringstoken måste verifieras mot värdena i OpenID-identifieringsdokumentet. Ett exempel finns i den klientoberoende versionen av dokumentet.

Microsoft Entra-mellanprogram har inbyggda funktioner för validering av åtkomsttoken. Du kan bläddra bland våra exempel för att hitta ett som är skrivet på det språk som du vill använda.

Vi tillhandahåller bibliotek och kodexempel som visar hur du hanterar tokenverifiering. Flera partnerbibliotek med öppen källkod är också tillgängliga för JSON-webbtokenvalidering (JWT). Det finns minst ett alternativ för nästan alla plattformar och språk. Mer information om Microsoft Entra-auktoriseringsbibliotek och kodexempel finns i Microsoft platforma za identitete autentiseringsbibliotek.

Om händelsehanteraren är värd för Azure Functions eller Web Apps är ett enkelt sätt att konfigurera Microsoft Entra-inloggning.

Använda en hanterad identitet för en key vault-referens

Web PubSub kan komma åt ett nyckelvalv för att hämta en hemlighet med hjälp av en hanterad identitet.

  1. Lägg till en systemtilldelad identitet eller en användartilldelad identitet för Azure Web PubSub.

  2. I nyckelvalvet beviljar du hemliga läsbehörigheter för den hanterade identiteten med hjälp av åtkomstprinciper. Mer information finns i Tilldela en åtkomstprincip för nyckelvalvet i Azure-portalen.

För närvarande kan den här funktionen användas i följande scenario:

  • Använd syntax {@Microsoft.KeyVault(SecretUri=<secret-identity>)} för att hämta hemligheter från ett nyckelvalv i inställningen för händelsehanterarens URL-mall.