Endbenutzerauthentifizierung zu einem Power Virtual Agents-Bot hinzufügen

Wählen Sie die Version von Power Virtual Agents, die Sie hier verwenden:

Sie können die Benutzerauthentifizierung direkt in einem Power Virtual Agents-Bot-Gespräch aktivieren. Benutzerauthentifizierung bedeutet, dass Sie die grundlegenden Eigenschaften eines Benutzers wie Name und ID in Bot-Variablen abrufen, einen Benutzer jedoch auch auffordern können, sich über einen Authentifizierungsknoten anzumelden, ein Benutzertoken für diesen Benutzer abzurufen und dieses Token dann zum Abrufen der Benutzerinformationen von einem Back-End-System zu verwenden.

Sie können auch einmaliges Anmelden (SSO) konfigurieren, damit sich Ihre Benutzer nicht manuell anmelden müssen.

Wichtig

Bevor Sie diese Funktion verwenden, müssen Sie den Anweisungen unter Konfigurationsanweisungen für die Endbenutzerauthentifizierung folgen.

Voraussetzungen

Authentifizierungvariablen

Wenn Ihr Bot mit den Authentifizierungsoptionen Nur für Teams oder Manuell konfiguriert ist, stehen in Ihren Themen eine Reihe von Authentifizierungsvariablen zur Verfügung. Überprüfen Sie die Dokumentation zur Authentifizierungskonfiguration für weitere Informationen zum Konfigurieren der Authentifizierung in Ihrem Bot.

In der folgenden Tabelle wird die Verfügbarkeit von Authentifizierungsvariablen nach Authentifizierungskonfigurationsoption verglichen:

Authentifizierungvariable Keine Authentifizierung Nur für Teams Manual
UserDisplayName ✔️ ✔️
UserID ✔️ ✔️
IsLoggedIn ✔️
AuthToken ✔️

UserDisplayName-Variable

Die UserDisplayName Variable enthält die Anzeigename des Benutzers, die im Identitätsanbieter gespeichert ist. Sie können diese Variable verwenden, um den Endbenutzer zu begrüßen oder auf ihn zu verweisen, ohne dass er dies dem Bot explizit mitteilen muss, wodurch er personalisierter wird.

Dieser Feldwert ergibt sich aus dem Azure Active Directory (Azure AD) name Anspruch. Für OAuth-Anbieter ist dieser Wert im name Anspruch gespeichert. Power Virtual Agents extrahiert dieses Feld automatisch in die Variable, stellen Sie also sicher, dass Sie profile als Teil Ihrer Authentifizierungsbereich-Einrichtung haben.

UserID-Variable

Die UserID Variable enthält die ID des Benutzers, die im Identitätsanbieter gespeichert ist. Dieser Wert kann von Power Automate Flows verwendet werden als API-Aufrufe, die die Benutzer-ID als Wert verwenden. Dieser Feldwert ergibt sich aus dem Azure AD sub Anspruch. Für OAuth-Anbieter ist dieser Wert im sub Anspruch gespeichert. Power Virtual Agents extrahiert dieses Feld automatisch in die Variable.

Warnung

Die UserDisplayName und UserID Variablen sind nicht garantiert, dass sie ausgefüllt werden, und es kann sich je nach Benutzerkonfiguration im Identitätsanbieter um leere Zeichenfolgen handeln. Testen Sie mit einem Benutzer Ihres Identifikationsanbieters, ob Ihre Themen ordnungsgemäß funktionieren, auch wenn diese Variablen leer sind.

IsLoggedIn-Variable

Die IsLoggedIn Variable gibt an, ob der Benutzer angemeldet ist (entweder als Ergebnis der Anmeldung oder bereits angemeldet, auch als Anmeldeerfolgspfad bezeichnet) oder nicht angemeldet ist (was zu einem Anmeldefehlerpfad führen würde).

IsLoggedIn ist eine Variable vom booleschen Typ, die den Anmeldestatus des Benutzers enthält. Mit dieser Variablen können Sie in Ihren Themen eine Verzweigungslogik erstellen, die nach einer erfolgreichen Anmeldung sucht (z. B. in der Vorlage, die bereits beim Hinzufügen des Authentifizieren-Knotens bereitgestellt wurde) oder zum opportunistischen Abrufen von Benutzerinformationen nur, wenn der Benutzer angemeldet ist.

AuthToken-Variable

Die AuthToken-Variable enthält das Token des Benutzers, das nach der Anmeldung des Benutzers abgerufen wird. Sie können diese Variable an Power Automate-Flows übergeben, sodass sie eine Verbindung zu Back-End-APIs herstellen und die Benutzerinformationen abrufen oder im Namen des Benutzers Maßnahmen ergreifen kann.

Warnung

Stellen Sie sicher, dass Sie die AuthToken-Variable nur an vertrauenswürdige Quellen übergeben. Sie enthält Informationen zur Benutzerauthentifizierung, die bei einer Beeinträchtigung dem Benutzer schaden können.

Verwenden Sie keine AuthToken in Meldungs knoten oder in Flows, denen Sie nicht vertrauen.

Testen von Authentifizierungsvariablen

Standardmäßig verwendet der Bereich Testbot das Konto des aktuell angemeldeten Benutzers, um das Feld UserDisplayName und UserID Variablen auszufüllen. Wenn Sie jedoch Themen testen, die die Authentifizierung verwenden, möchten Sie möglicherweise andere Werte für diese Variablen (oder sogar einen leeren Wert) verwenden.

Beispielsweise möchten Sie möglicherweise testen, wie Sonderzeichen verwendet werden oder was passiert, wenn die Variable leer ist.

Dies gilt nur für das Feld Testbot; Sie können die in diesem Abschnitt beschriebenen Befehle nicht in einem veröffentlichten Bot verwenden, der auf einem Kanal bereitgestellt wird.

In der folgenden Tabelle sind die Befehle aufgeführt, mit denen diese Variablen gefüllt werden. Geben Sie den Befehl in den Bereich Testbot genau so ein, als würden Sie normalerweise mit dem Bot chatten. Sie erhalten eine Bestätigungsnachricht vom Bot, wenn Sie erfolgreich sind. Wenn Ihr Bot keine Authentifizierung verwendet, wird eine Fehlermeldung angezeigt.

Wenn Sie den Bereich Testbot zurücksetzen (oder Sie Änderungen an einem Thema vornehmen, die dazu führen, dass der Testbot automatischen zurückgesetzt wird) müssen Sie die Befehle erneut senden.

Variable Benutzerdefinierter Befehl Befehl zum (leeren) Wertbefehl
UserDisplayName /debug set bot.UserDisplayName "Value" /debug set bot.UserDisplayName ""
UserID Nicht verfügbar /debug set bot.UserID ""

Wichtig

Sie können die UserID Variable mit einem benutzerdefinierten Wert (außer einem leeren oder leeren Wert) aus Sicherheitsgründen nicht ausfüllen.

Authentifizierung bei Verwendung der Konfiguration Nur für Teams

Wenn Ihre Authentifizierungsoption auf Nur für Teams eingestellt ist, müssen Sie Ihren Themen keine explizite Authentifizierung hinzufügen. In dieser Konfiguration wird jeder Benutzer in Microsoft Teams automatisch über ihre Team-Anmeldeinformationen angemeldet und muss sich nicht explizit mit einer Authentifizierungskarte anmelden. Wenn Ihre Authentifizierungsoption auf Manuell eingestellt ist, müssen Sie den Authentifizierungsknoten hinzufügen (auch für den Teamkanal).

Hinweis

Wenn Ihre Authentifizierungsoption auf Nur für Teams eingestellt ist, haben Sie keine Option, explizite Authentifizierung Ihren Themen hinzufügen.

Endbenutzerauthentifizierung zu einem Thema hinzufügen

Fügen Sie die Vorlage für den Authentifizierungsknoten ein:

  1. Wechseln Sie zur Themenseite für den Bot, den Sie bearbeiten möchten.

  2. Öffnen Sie den Autoren-Canvas für das Thema, zu dem Sie eine Authentifizierungsvorlage hinzufügen möchten.

  3. Klicken Sie auf das Pluszeichensymbol (+), um einen Nachrichtenknoten hinzuzufügen. Geben Sie ein, was der Bot sagen soll, um anzuzeigen, dass eine Anmeldeerfahrung bevorsteht.

    Bildschirmfoto der Hinzufügung eines Knotens.

  4. Wählen Sie unter dem Nachrichtenknoten das Pluszeichen (+) Symbol und wählen Sie Rufen Sie eine Aktion auf und dann Authentifizieren aus.

    Authentifizierung auswählen.

  5. Nach der Auswahl wird automatisch eine Reihe neuer Knoten hinzugefügt. Diese Knoten enthalten ein übergeordnetes Element Authentifizierungs-Knoten, gefolgt von Knoten für einen erfolgreichen und einen fehlerhaften Pfad.

    Neue Knoten.

    Hinweis

    Der Knoten Authentifizieren ist nur in der Aktionsauswahl am Ende eines Dialogbaums (als Blattknoten) verfügbar. Es kann nicht in der Mitte eines Dialogs hinzugefügt werden. Nach dem Hinzufügen können weitere Knoten darunter hinzugefügt werden.

Authentifizierungsknoten

Im Authentifizieren-Knoten wird der Benutzer, falls er noch nicht angemeldet ist, mit einer Anmeldekarte dazu aufgefordert.

Anmeldungsanforderung.

Sobald der Benutzer seinen Benutzernamen und sein Kennwort in die Eingabeaufforderung (gehostet vom Identitätsanbieter) eingegeben hat, wird er möglicherweise aufgefordert, einen Validierungscode einzugeben, abhängig vom Kanal. Einige Kanäle, wie z. B. Microsoft Teams, müssen keinen Validierungscode eingeben.

Beachten Sie, dass, wenn Ihr Bot für SSO konfiguriert ist, der Benutzer nicht aufgefordert wird, sich anzumelden.

Benutzer werden nur einmal aufgefordert, sich während eines Gesprächs anzumelden, selbst wenn sie auf eine andere Anmeldekarte stoßen.

AuthToken-Verwendung ohne Authentifizierungsknoten

Die Variablen IsLoggedIn und AuthToken sind auch dann verfügbar, wenn Sie den von der bereitgestellten Vorlage Eine Aktion aufrufen-Menüeintrag nicht verwenden. Wenn Sie die AuthToken-Variable übergeben, ohne dass der Benutzer zuerst den Authentifizieren-Knoten begehen muss, wird der Benutzer in diesem Schritt aufgefordert, sich anzumelden.

Das Weitergeben der AuthToken Variable kann nützlich sein, wenn Sie immer erwarten, dass der Benutzer angemeldet ist, oder wenn Ihr Benutzer von einem anderen Thema umgeleitet wird. Wir empfehlen Ihnen, die vom Eine Aktion aufrufen-Eintrag bereitgestellte Vorlage zur Behandlung von Fällen zu verwenden, in denen sich der Benutzer nicht anmeldet.

Hinweis

Wenn sich der Benutzer mitten in einer Konversation abmeldet, wird er aufgefordert, sich erneut anzumelden, wenn das Thema zu einem Knoten kommt, der die AuthToken-Variable verwendet.

Erfolgspfad

Der Erfolgspfad entspricht IsLoggedIn = True und berücksichtigt, wann sich der Benutzer erfolgreich angemeldet hat (oder bereits angemeldet war).

Wenn Sie eine Logik haben, die die AuthToken-Variable verwendet (zum Beispiel, um eine Verbindung zu einem Back-End-System herzustellen, indem ein Flow zum Abrufen der Benutzerinformationen verwendet wird), sollte diese diesen Pfad gehen.

Fehlerpfad

Der Fehlerpfad entspricht einer anderen Bedingung als IsLoggedIn = True. In den meisten Fällen tritt der Fehlerpfad auf, weil sich der Benutzer nicht angemeldet, das falsche Kennwort verwendet oder die Anmeldeerfahrung abgebrochen hat.

Fügen Sie eine Logik hinzu, die Sie möglicherweise behandeln möchten. Als Beispiel haben wir Optionen für einen erneuten Versuch oder zum Eskalieren an einen Live-Agenten bereitgestellt. Passen Sie die Aktionen des Fehlerpfads an Ihr bestimmtes Szenario und Ihre Verwendung an.

Testen Ihres Themas

Stellen Sie sicher, dass Sie Testen Sie Ihre Thema mit einem realen Benutzer verwenden, der in Ihrem Identitätsanbieter konfiguriert ist. Stellen Sie sicher, dass sowohl Anmeldeerfolgs- als auch Fehlerpfade ausgeführt werden. Es gibt also keine Überraschungen, wenn sich Ihr Benutzer nicht anmeldet oder ein Fehler bei der Anmeldeerfahrung des Identitätsanbieters vorliegt.