Fügen einem Thema eine Benutzerauthentifizierung hinzu, damit sich Ihre Kunden direkt in einer Unterhaltung anmelden können. Anschließend können Sie die Unterhaltung mit Benutzervariablen personalisieren und auf im Namen des Benutzers auf Back-End-Systeme zugreifen.
Sie müssen die Benutzerauthentifizierung mit der Microsoft Entra ID konfigurieren, bevor Sie die Authentifizierung in Ihren Themen verwenden können.
Folgen Sie den Anweisungen unter Benutzerauthentifizierung mit Microsoft Entra ID konfigurieren.
Die Benutzerauthentifizierung mit dem Anmelden-Systemthema hinzufügen
Wenn Sie einen Agent erstellen, fügt Copilot Studio automatisch ein Systemthema namens Anmelden hinzu. Sie müssen zur Verwendung des Themas die Authentifizierung Ihres Agenten auf manuell einstellen und von den Benutzenden eine Anmeldung verlangen. Wenn ein Kunde eine Unterhaltung mit dem Agent beginnt, wird das Thema Anmelden ausgelöst und fordert den Benutzer auf, sich anzumelden. Sie können das Anmelden-Thema so anpassen, dass er für Ihren Agenten geeignet ist.
Wichtig
Es wird empfohlen, das Thema Anmelden nur zu verwenden, um die bereitgestellte Authentifizierungsmethode von Copilot Studio bereitzustellen. Es sollte nicht geändert werden, um andere Aktionen oder Flows oder andere Authentifizierungsmethoden aufzurufen.
- Öffnen Sie Ihren Agent in Copilot Studio und wählen Sie oben auf der Seite Einstellungen aus und dann Sicherheit.
- Wählen Sie Authentifizierung.
- Wählen Sie Manuell authentifizieren und dann Benutzeranmeldung erforderlich.
-
Konfigurieren Sie alle manuellen Authentifizierungsfelder nach Bedarf.
- Wählen Sie Speichern aus.
Endbenutzerauthentifizierung zu einem benutzerdefinierten Thema hinzufügen
Das Thema Anmeldung authentifiziert den Benutzer zu Beginn des Gesprächs. Damit sich der Benutzer später anmelden kann, können Sie jedem benutzerdefinierten Thema einen Authentifizierungsknoten hinzufügen.
Wenn Kunden ihren Benutzernamen und ihr Passwort eingeben, werden sie möglicherweise aufgefordert, einen Validierungscode einzugeben. Nachdem sie sich angemeldet haben, werden sie nicht erneut aufgefordert, selbst wenn sie einen anderen Authentifizierungsknoten erreichen.
Wählen Sie oben auf der Seite zuerst Einstellungen und anschließend Sicherheit aus.
Wählen Sie die Kachel Authentifizierung aus.
Anmerkung
Sie müssen Manuell authentifizieren auswählen, um eine Benutzerauthentifizierung zu einem benutzerdefinierten Thema hinzuzufügen.
Aktivieren Sie " Manuell authentifizieren" , und deaktivieren Sie das Kontrollkästchen "Benutzer zum Anmelden erforderlich ".
Konfigurieren Sie alle manuellen Authentifizierungsfelder nach Bedarf.
Wählen Sie Speichern aus.
Wählen Sie oben auf der Seite Thema aus.
Wählen Sie Knoten hinzufügen (
) >Erweitert>Authentifizieren.
Testen Sie Ihr Thema mithilfe eines Benutzers, der mit Ihrem Identitätsanbieter konfiguriert ist.
Tipp
Es ist wichtig, dass Sie Pfade für erfolgreiche und fehlgeschlagene Anmeldungen erstellen. Eine Anmeldung kann aus vielen Gründen fehlschlagen, einschließlich Fehlern bei der Anmeldeerfahrung des Identitätsanbieters.
Authentifizierungsvariablen
Wenn Sie die Benutzerauthentifizierung für Ihren Agenten konfigurieren, können Sie Authentifizierungsvariablen in Ihren Themen verwenden. In der folgenden Tabelle wird die Verfügbarkeit dieser Variablen basierend auf der von Ihnen ausgewählten Authentifizierungsoption verglichen:
Weitere Informationen über Variablen finden Sie unter Variablennübersicht.
| Authentifizierungsvariable |
Keine Authentifizierung |
Mit Microsoft authentifizieren |
Manuell authentifizieren |
|
User.DisplayName |
Nicht verfügbar |
Verfügbar |
Verfügbar |
| User.FirstName |
Nicht verfügbar |
Verfügbar |
Verfügbar |
| User.LastName |
Nicht verfügbar |
Verfügbar |
Verfügbar |
| User.PrincipalName |
Nicht verfügbar |
Verfügbar |
Verfügbar |
| Benutzer-E-Mail |
Nicht verfügbar |
Verfügbar |
Verfügbar |
|
User.Id |
Nicht verfügbar |
Verfügbar |
Verfügbar |
|
User.IsLoggedIn |
Nicht verfügbar |
Verfügbar |
Verfügbar |
|
User.AccessToken |
Nicht verfügbar |
Nicht verfügbar |
Verfügbar |
|
SignInReason |
Nicht verfügbar |
Verfügbar |
Verfügbar |
User.DisplayName
Warnung
Es ist nicht garantiert, dass diese Variable einen Wert enthält. Testen Sie mit einem Benutzer Ihres Identifikationsanbieters, ob Ihr Thema ordnungsgemäß funktioniert.
Die Variable User.DisplayName enthält den Anzeigenamen des Benutzers, der im Identitätsanbieter gespeichert ist. Verwenden Sie diese Variable, um den Benutzenden zu begrüßen oder auf ihn zu verweisen, ohne dass er dem Agenten explizit seinen Namen mitteilen muss. So wird die Unterhaltung persönlicher.
Copilot Studio legt automatisch den Wert User.DisplayName aus der name-Anforderung fest, die vom Identitätsanbieter bereitgestellt wird, sofern der profile-Bereich bei der Konfiguration der manuellen Authentifizierung definiert wurde. Weitere Informationen zum Umfang finden Sie unter Benutzerauthentifizierung mit Microsoft Entra ID konfigurieren.
User.Id
Warnung
Es ist nicht garantiert, dass diese Variable einen Wert enthält. Testen Sie mit einem Benutzer Ihres Identifikationsanbieters, ob Ihr Thema ordnungsgemäß funktioniert.
Die Variable User.Id enthält die Benutzer-ID, die im Identitätsanbieter gespeichert ist. Verwenden Sie diese Variable in Power Automate-Flows, um APIs aufzurufen, die die UserID als Wert annehmen.
Copilot Studio legt automatisch den Wert User.DisplayName aus der sub-Anforderung fest, die vom Identitätsanbieter bereitgestellt wird:
User.IsLoggedIn
User.IsLoggedIn ist eine Boolesche Variable, die den Anmeldestatus des Benutzers speichert. Der Wert true gibt an, dass der Benutzer angemeldet ist. Sie können diese Variable verwenden, um eine Verzweigungslogik in Ihren Themen zu erstellen, die eine erfolgreiche Anmeldung überprüft, oder um Benutzerinformationen nur abzurufen, wenn der Benutzer angemeldet ist.
User.AccessToken
Warnung
Stellen Sie sicher, dass Sie die User.AccessToken-Variable nur an vertrauenswürdige Quellen übergeben. Sie enthält Informationen zur Benutzerauthentifizierung, die bei einer Beeinträchtigung dem Benutzer schaden können.
Die User.AccessToken-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 können.
Verwenden Sie in Nachrichtenknoten oder in Flows, denen Sie nicht vertrauen, keinen User.AccessToken.
SignInReason
SignInReason ist eine Variable vom Typ Auswahl, die angibt, wann sich der Benutzer anmelden muss. Sie hat zwei mögliche Werte:
SignInRequired gibt an, dass sich der Benutzer zu Beginn des Gesprächs mit dem Anmelden-Systemthema anmelden muss.
Benutzer müssen sich anmelden muss aktiviert sein.
Initializer zeigt an, dass ein Benutzer, der nicht angemeldet ist und einen Punkt in der Unterhaltung erreicht, der Authentifizierungsvariablen verwendet, aufgefordert wird, sich anzumelden.
Authentifizierungsvariablen
Wenn Ihr Agent mit den Authentifizierungsoptionen Mit Microsoft authentifizieren oder Manuell konfiguriert ist, stehen in Ihren Themen eine Reihe von Authentifizierungsvariablen zur Verfügung. Weitere Informationen zum Konfigurieren der Authentifizierung in Ihrem Agent finden Sie unter Benutzerauthentifizierung in Copilot Studio konfigurieren.
In der folgenden Tabelle wird die Verfügbarkeit von Authentifizierungsvariablen nach Authentifizierungskonfigurationsoption verglichen:
| Authentifizierungsvariable |
Keine Authentifizierung |
Mit Microsoft authentifizieren |
Manuell |
User.DisplayName |
❌ |
✔️ |
✔️ |
User.Id |
❌ |
✔️ |
✔️ |
User.IsLoggedIn |
❌ |
❌ |
✔️ |
User.AccessToken |
❌ |
❌ |
✔️ |
UserDisplayName-Variable
Die User.DisplayName Variable enthält die Anzeigename des Benutzers, die im Identitätsanbieter gespeichert ist. Sie können diese Variable verwenden, um den Kunden zu begrüßen oder auf ihn zu verweisen, ohne dass er dies dem Agenten explizit sagen muss, wodurch die Unterhaltung stärker personalisiert wird.
Dieser Feldwert ergibt sich aus dem Microsoft Entra ID name Anspruch. Für OAuth-Anbieter ist dieser Wert im name Anspruch gespeichert. Copilot Studio extrahiert dieses Feld automatisch in die Variable, stellen Sie also sicher, dass Sie profile als Teil Ihrer Authentifizierungsbereich-Einrichtung haben.
UserID-Variable
Die User.Id Variable enthält die ID des Benutzers, die im Identitätsanbieter gespeichert ist. Power Automate Flow kann diesen Wert verwenden um APIs aufzurufen, die die UserID als Wert verwenden.
Dieser Feldwert ergibt sich aus dem Microsoft Entra ID sub Anspruch. Für OAuth-Anbieter ist dieser Wert im sub Anspruch gespeichert. Copilot Studio extrahiert dieses Feld automatisch in die Variable.
Warnung
Die Variablen User.DisplayName und User.Id könnten möglicherweise nicht ausgefüllt sein und stattdessen leere Zeichenfolgen enthalten, abhängig von der Benutzerkonfiguration im Identitätsanbieter. Testen Sie mit einem Benutzer Ihres Identifikationsanbieters, ob Ihre Themen ordnungsgemäß funktionieren, auch wenn diese Variablen leer sind.
IsLoggedIn-Variable
Die User.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).
User.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.
User.AccessToken-Variable
Die User.AccessToken-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 können.
Warnung
Stellen Sie sicher, dass Sie die User.AccessToken-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 User.AccessToken in Nachrichtenknoten 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 User.DisplayName und User.Id 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.
In der folgenden Tabelle sind die Befehle zum Auffüllen dieser Variablen aufgeführt. Diese Befehle gelten nur für den Bereich Testbot. Sie können nicht in einem veröffentlichten Agenten verwendet werden, der auf einem Kanal bereitgestellt wird.
Geben Sie den gewünschten Befehl in den Bereich Testbot genau so ein, als würden Sie normalerweise mit dem Agenten chatten. Wenn Sie erfolgreich sind, erhalten Sie eine Bestätigungsmeldung vom Agent. Wenn Ihr Agent keine Authentifizierung verwendet, wird eine Fehlermeldung angezeigt.
Wenn Sie den Bereich "Bot testen " zurücksetzen (oder Änderungen an einem Thema vornehmen, das dazu führt, dass der Testbot automatisch zurückgesetzt wird), müssen Sie die Befehle erneut senden.
| Variable |
Benutzerdefinierter Befehl |
Befehl zum (leeren) Wertbefehl |
User.DisplayName |
/debug set bot.UserDisplayName "Value" |
/debug set bot.UserDisplayName "" |
User.Id |
Nicht verfügbar |
/debug set bot.UserID "" |
Wichtig
Aus Sicherheitsgründen können Sie die Variable User.Id nicht mit einem benutzerdefinierten Wert (außer einem leeren oder unausgefüllten Wert) ausfüllen.
Authentifizierung bei Verwendung von „Bei Microsoft authentifizieren“
Wenn Ihre Authentifizierungsoption auf Mit Microsoft authentifizieren festgelegt 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 festgelegt ist, müssen Sie einen Authentifizierungsknoten hinzufügen (auch für den Teams-Kanal).
Notiz
Wenn Ihre Authentifizierungsoption auf " Authentifizieren bei Microsoft" festgelegt ist, können Sie Ihren Themen keine explizite Authentifizierung hinzufügen.
Endbenutzerauthentifizierung zu einem Thema hinzufügen
Der Knoten Authentifizieren fordert einen Benutzer auf, sich mit einer Anmeldekarte anzumelden. Nachdem ein Benutzer sich angemeldet hat, wird er auch dann nicht erneut aufgefordert, wenn er einen anderen Authentifizierungsknoten erreichen.
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, z. B. Microsoft Teams, fordern keinen Validierungscode vom Benutzer an.
Wenn Ihr Agent SSO konfiguriert hat, wird der Benutzer nicht aufgefordert, sich anzumelden.
So fügen Sie Ihrem Thema einen Authentifizierungsknoten hinzu:
Gehen Sie zur Seite Themen für den Agenten, den Sie bearbeiten möchten.
Öffnen Sie das Thema, dem Sie die Authentifizierungsvorlage hinzufügen möchten.
Anmerkung
Wenn Ihr Agent mit dem Dynamics 365-Kundendienst verbunden ist, kann der Authentifizierungsknoten nicht Teil des Unterhaltungspfads sein, dem der Agent folgt, wenn er benutzer anfänglich begrüßt; andernfalls wird die Anmeldekarte zweimal angezeigt. Stattdessen sollten Sie den Authentifizierungsknoten einem anderen Thema hinzufügen, das von einer Benutzerantwort ausgelöst wird.
Wählen Sie Knoten hinzufügen (+), um einen Nachrichtenknoten hinzuzufügen. Geben Sie ein, was der Agent sagen soll, um anzuzeigen, dass es gleich zu einer Anmeldeerfahrung kommt.
Wählen Sie unter dem Nachrichtenknoten Knoten hinzufügen (+) und wählen Sie Eine Aktion aufrufen und dann Authentifizieren aus.
Notiz
Der Knoten Authentifizieren ist nur in der Aktionsauswahl am Ende eines Dialogbaums (als Blattknoten) verfügbar. Sie kann nicht in der Mitte eines Dialogfelds hinzugefügt werden. Nach dem Hinzufügen können weitere Knoten darunter hinzugefügt werden.
Neue Knoten werden automatisch angezeigt: ein übergeordneter Authentifizierungsknoten, gefolgt von Knoten für einen erfolgreichen und einen fehlerhaften Pfad.
User.AccessToken-Verwendung ohne Authentifizierungsknoten
Die Variablen User.IsLoggedIn und User.AccessToken sind auch dann verfügbar, wenn Sie den von der bereitgestellten Vorlage Eine Aktion aufrufen-Menüeintrag nicht verwenden. Wenn Sie die User.AccessToken Variable übergeben, ohne dass der Benutzer zuerst den Authentifizierungsknoten durchlaufen muss, wird der Benutzer aufgefordert, sich bei diesem Schritt anzumelden.
Das Weitergeben der User.AccessToken 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.
Notiz
Wenn sich der Benutzer in der Mitte einer Unterhaltung abmeldet, wird er aufgefordert, sich erneut anzumelden, wenn das Thema zu einem Knoten gelangt, der die User.AccessToken Variable verwendet.
Erfolgspfad
Der Erfolgspfad entspricht User.IsLoggedIn = True und berücksichtigt, wann sich der Benutzer erfolgreich angemeldet hat (oder bereits angemeldet war).
Wenn Sie eine Logik haben, die die User.AccessToken-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. Beispielsweise gibt es Optionen zum Wiederholen oder Eskalieren zu einem Live-Agenten. 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 der Erfolgs- als auch der Fehlerweg für die Anmeldung getestet werden. Auf diese Weise gibt es keine Überraschungen, wenn sich der Benutzer nicht anmelden kann oder bei der Anmeldeerfahrung des Identitätsanbieters ein Fehler auftritt.