Dela via


Grunderna för Bot Framework-autentisering

GÄLLER FÖR: SDK v4

Ofta måste en robot komma åt skyddade resurser, till exempel e-postkonto, för användarens räkning. För att kunna göra det måste roboten auktoriseras baserat på användarens autentiseringsuppgifter. Innan det måste användaren autentiseras först. Roboten måste vara en känd entitet, dvs. den måste autentiseras i Azure AI Bot Service-kontexten. Detta sker innan roboten har behörighet att arbeta för användarens räkning.

Nu ska vi se om vi kan ta bort det här paketet genom att börja med en fågelperspektiv över Bot Framework-autentiseringskontexten.

Bot authentication context

  • När du registrerar en robot i Azure via en Azure Bot-resurs skapar Azure ett Registreringsprogram för Microsoft Entra-ID. Det här programmet har ett app-ID (MicrosoftAppId) och en klienthemlighet (MicrosoftAppPassword). Du använder dessa värden i robotkonfigurationsfilerna enligt beskrivningen nedan.

  • Microsoft Entra ID är en molnidentitetstjänst som gör att du kan skapa program som loggar in användare på ett säkert sätt med hjälp av branschstandardprotokoll som OAuth 2.0. Du skapar ett Active Directory-program och använder dess app-ID och lösenord för att välja en identitetsprovider och generera en autentiseringsanslutning. Du lägger till den här anslutningen till robotresursen. Du lägger också till anslutningsnamnet i robotkonfigurationsfilerna enligt beskrivningen nedan.

  • En robot identifieras av resursappens ID och lösenord för Azure Bot. Du lägger till relaterade värden i robotens konfigurationsfil eller till en hemligheter eller nyckelhanterare. Du lägger också till anslutningsnamnet. Roboten använder en token baserat på app-ID och lösenord för att få åtkomst till skyddade resurser. Roboten använder olika token, baserat på autentiseringsanslutningen, för att få åtkomst till användarens skyddade resurser.

Robotautentisering och auktorisering

Följande är de viktigaste stegen för att autentisera en robot och ge den behörighet att komma åt användarens skyddade resurser:

  1. Skapa ett program för registrering av robotkanal.
  2. Lägg till registreringsappens ID och lösenord i robotkonfigurationsfilen. På så sätt kan roboten autentiseras för åtkomst till skyddade resurser.
  3. Skapa ett Microsoft Entra-ID-program för att välja en identitetsprovider för att autentisera användaren.
  4. Skapa en autentiseringsanslutning och lägg till den i inställningarna för kanalregistrering.
  5. Lägg till anslutningsnamnet i robotens konfigurationsfiler. På så sätt kan roboten ha behörighet att komma åt användarens skyddade resurser.

Ett fullständigt exempel finns i Lägga till autentisering i en robot.

Metodtips

  • Se till att Microsoft Entra ID-appregistreringen är begränsad till det ursprungliga syftet med tjänst-till-tjänst-programmet.
  • Skapa ytterligare en Microsoft Entra-ID-app för användare till tjänstautentisering, för mer begränsad kontroll över inaktivering av autentiseringsanslutningar, löpande hemligheter eller återanvändning av Microsoft Entra-ID-appen med andra program.

Några av de problem du stöter på om du även använder Registreringsappen för Microsoft Entra-ID för autentisering är:

  • Om certifikatet som är kopplat till Microsoft Entra ID-appregistreringen behöver förnyas, skulle det påverka användare som har autentiserats med andra Microsoft Entra-ID-tjänster med hjälp av certifikatet.
  • I allmänhet skapar den en enda fel- och kontrollpunkt för alla autentiseringsrelaterade aktiviteter med roboten.

Följande artiklar innehåller detaljerad information och exempel om autentisering i Bot Framework. Börja med att titta på autentiseringstyperna och sedan identitetsprovidrar.

Artikel Description
Autentiseringstyper Beskriver de två autentiseringstyperna för Bot Framework och de token som de använder.
Identitetsprovidrar Beskriver användningen av identitetsprovidrar. De gör att du kan skapa program som loggar in användare på ett säkert sätt med hjälp av branschstandardprotokoll som OAuth2.0.
Användarautentisering Beskriver användarens autentisering och den relaterade token för att auktorisera en robot för att utföra uppgifter för användarens räkning.
Enkel inloggning Beskriver enskild användarautentisering för åtkomst till flera skyddade resurser.
Registrera en robot med Azure Visar hur du registrerar en robot med Azure AI Bot Service.
Säkerhetsriktlinjer för Bot Framework Beskriver säkerhet i allmänhet och som gäller för Bot Framework.
Lägga till autentisering i en robot Visar hur du skapar robotkanalregistrering, skapar en autentiseringsanslutning och förbereder koden.
Lägga till enkel inloggning i en robot Visar hur du lägger till enkel inloggningsautentisering till en robot.