Indsæt brugergodkendelse i et emne for at give kunderne mulighed for at logge direkte på i en samtale. Du kan derefter bruge disse variabler til at tilpasse samtalen for brugeren eller få adgang til back end-systemer på brugerens vegne.
Du skal konfigurere brugergodkendelse med Microsoft Entra ID, før du kan bruge godkendelse i emnerne.
Følg instruktionerne i Konfiguration af brugergodkendelse med Microsoft Entra ID.
Tilføj brugergodkendelse med logonsystemets emne
Når du opretter en copilot, tilføjer Copilot Studio automatisk et systememne, der kaldes Logon. Før du kan bruge den, skal du indstille copilotens godkendelse til at være manuel og kræve, at brugerne logger på. Når en kunde starter en samtale med copiloten, udløses emnet Logon og beder brugeren om at logge på. Du kan tilpasse emnet Logon efter behov til din copilot.
Vigtigt!
Det anbefales, at emnet Logon kun bruges til at angive den godkendelsesmetode, der leveres af Copilot Studio. Den skal ikke ændres, så den kalder andre handlinger eller flow eller andre godkendelsesmetoder.
Åbn din copilot i Copilot Studio, vælg Indstillinger øverst på siden, og vælg derefter Sikkerhed.
Vælg Godkendelse.
Vælg Godkend manuelt, og vælg derefter Kræv, at brugere logger på.
Konfigurer alle manuelle godkendelsesfelter efter behov.
Vælg Gem.
Tilføje brugergodkendelse med brugerdefineret emne
Emnet Logon godkender brugeren i starten af samtalen. Hvis brugeren skal kunne logge på senere, kan du føje en godkendelsesnode til alle brugerdefinerede emne.
Når kunderne angiver brugernavn og adgangskode, bliver de måske bedt om at angive en valideringskode. Når de logger på, bliver de ikke bedt om det igen, selvom de når en anden Godkend node.
Vælg Indstillinger øverst på siden, og vælg derefter Sikkerhed.
Vælg feltet Godkendelse.
Bemærk
Du skal vælge Godkend manuelt for at føje brugergodkendelse til et brugerdefineret emne.
Fjern markeringen i afkrydsningsfeltet Kræv, at brugere logger på.
Konfigurer alle manuelle godkendelsesfelter efter behov.
Vælg Gem.
Vælg Emner øverst på siden.
Vælg Tilføj node ( ) >Avanceret>Godkend.
Test dit emne med en bruger, der er konfigureret med din identitetsudbyder.
Tip
Det er vigtigt, at du opretter veje til både succes med logon og fejl. En bruger kan af mange årsager ikke logge på, herunder fejl med identitetsudbyderens logonoplevelse.
Godkendelsesvariable
Når du konfigurerer brugergodkendelse for din copilot, kan du bruge godkendelsesvariabler i dine emner. I følgende tabel sammenlignes tilgængeligheden af disse variabler baseret på godkendelsesindstillingen.
Du kan finde flere oplysninger om variabler under Arbejde med variabler.
Variabel til godkendelse |
Ingen godkendelse |
Godkend med Microsoft |
Godkend manuelt |
Bruger.DisplayName |
Ikke tilgængelig |
Tilgængelig |
Tilgængelig |
User.FirstName |
Ikke tilgængelig |
Tilgængelig |
Tilgængelig |
User.LastName |
Ikke tilgængelig |
Tilgængelig |
Tilgængelig |
User.PrincipalName |
Ikke tilgængelig |
Tilgængelig |
Tilgængelig |
User.Email |
Ikke tilgængelig |
Tilgængelig |
Tilgængelig |
User.Id |
Ikke tilgængelig |
Tilgængelig |
Tilgængelig |
User.IsLoggedIn |
Ikke tilgængelig |
Tilgængelig |
Tilgængelig |
User.AccessToken |
Ikke tilgængelig |
Ikke tilgængelig |
Tilgængelig |
SignInReason |
Ikke tilgængelig |
Tilgængelig |
Tilgængelig |
User.DisplayName
Advarsel!
Det er ikke sikkert, at denne variabel indeholder en værdi. Test med en bruger fra din identifikationsudbyder for at sikre, at emnet fungerer korrekt.
Variablen User.DisplayName
indeholder det visningsnavn, der er gemt i identitetsudbyderen. Brug denne variabel til at hilse brugeren velkommen eller henvise til brugeren uden eksplicit at navngive copiloten, hvilket gør den mere personlig.
Copilot Studio angiver automatisk værdien for User.DisplayName
fra den værdi name
, der angives fra den identitetsudbyder, så længe profile
-omfanget blev defineret, da manuel godkendelse blev konfigureret. Du kan finde flere oplysninger om omfang i Konfigurere brugergodkendelse med Microsoft Entra ID.
User.Id
Advarsel!
Det er ikke sikkert, at denne variabel indeholder en værdi. Test med en bruger fra din identifikationsudbyder for at sikre, at emnet fungerer korrekt.
Variablen User.Id
indeholder det bruger-id, der er gemt i identitetsudbyderen. Brug denne variabel i Power Automate-flows til at kalde et API, der udfører UserID som værdi.
Copilot Studio indstiller automatisk værdien i User.DisplayName
fra sub
-kravet fra identitetsudbyderen.
User.IsLoggedIn
User.IsLoggedIn
er en boolesk variabel, der gemmer brugerens logonstatus. Værdien for true
angiver, at brugeren er logget på. Du kan bruge denne variabel til at oprette forgreningslogik i de emner, der kontrollerer, om brugeren har haft logon eller til opportunistisk at hente brugeroplysninger, men kun hvis brugeren er logget på.
User.AccessToken
Advarsel!
Sørg for, at du kun overfører User.AccessToken
-variablen til kilder, du har tillid til. Den indeholder oplysninger om brugergodkendelse, som kan skade brugeren, hvis den er kompromitteret.
Variablen User.AccessToken
indeholder brugerens token, som hentes, efter at brugeren er logget på. Du kan overføre denne variabel til Power Automate-flows, så de kan forbindes til back-end-API'er og hente brugerens oplysninger eller udføre handlinger på brugerens vegne.
Brug ikke User.AccessToken
i Meddelelse-noder eller i flows, som du ikke har tillid til.
SignInReason
SignInReason
er en variabel af valgtypen, der angiver, hvornår brugeren skal logge på. Den har to mulige værdier:
SignInRequired
angiver, at brugeren skal logge på i begyndelsen af samtalen ved hjælp af systememnet Log på . Kræv, at brugere logger på, skal være slået til .
Initializer
angiver, at når en bruger ikke er logget på, og vedkommende når et punkt i samtalen, der bruger godkendelsesvariabler, bliver vedkommende bedt om at logge på.
Godkendelsesvariable
Hvis din copilot er konfigureret med enten godkendelsesindstillinger for Microsoft eller manuel godkendelse, har du et sæt godkendelsesvariabler tilgængelige i dine emner. Der er flere oplysninger om konfiguration af godkendelse i din copilot i Konfiguration af brugergodkendelse i Copilot Studio.
I følgende tabel sammenlignes tilgængeligheden af godkendelsesvariable under konfigurationsindstillingen for godkendelse:
Variabel til godkendelse |
Ingen godkendelse |
Godkend med Microsoft |
Manuelt |
User.DisplayName |
❌ |
✔️ |
✔️ |
User.Id |
❌ |
✔️ |
✔️ |
User.IsLoggedIn |
❌ |
❌ |
✔️ |
User.AccessToken |
❌ |
❌ |
✔️ |
Variablen UserDisplayName
Variablen User.DisplayName
indeholder brugerens viste navn, som er gemt i identitetsudbyderen. Du kan bruge denne variabel til at hilse velkommen eller henvise til slutbrugeren uden at de eksplicit skal sige det til copiloten, hvilket gør den mere personlig.
Værdien i dette felt hentes fra kravet Microsoft Entra ID name
. For OAuth udbydere gemmes denne værdi i kravet name
. Copilot Studio udtrækker automatisk dette felt i variablen, så kontrollér, at du har profile
som en del af din konfiguration af godkendelsesområdet.
Variablen UserID
Variablen User.Id
indeholder brugerens id, som er gemt i identitetsudbyderen. Power Automate flows kan bruge denne værdi til at kalde API'er, der tager User-ID'et som en værdi.
Værdien i dette felt hentes fra kravet Microsoft Entra ID sub
. For OAuth udbydere gemmes denne værdi i kravet sub
. Copilot Studio udtrækker automatisk dette felt til variablen.
Advarsel!
Variablerne User.DisplayName
og User.Id
er ikke garanteret udfyldt og kan være tomme strenge afhængigt af brugerkonfigurationen i identitetsudbyderen. Test med en bruger fra din identifikationsudbyder for at sikre, at emnerne fungerer korrekt, også selvom disse variabler er tomme.
IsLoggedIn-variablen
Variablen User.IsLoggedIn
angiver, om brugeren er logget på (enten som følge af at logge på eller allerede er logget på, også kendt som stien til vellykket logon) eller ikke er logget på (hvilket ville resultere i stien til loginfejl).
User.IsLoggedIn
er en boolesk variabel, der indeholder brugerens logopedstatus. Du kan bruge denne variabel til at oprette forgreningslogik i de emner, der kontrollerer, om brugeren har haft et vellykket logon (f.eks. i skabelonen, som allerede findes som en del af tilføjelsen af Godkendelsesnoden) eller til opportunistisk at hente brugeroplysninger, men kun hvis brugeren er logget på.
User.AccessToken-variabel
Variablen User.AccessToken
indeholder brugerens token, som hentes, efter at brugeren er logget på. Du kan overføre denne variabel til Power Automate-strømme, så de kan forbinde til back-end-API'er og hente brugerens oplysninger eller udføre handlinger på brugerens vegne.
Advarsel!
Sørg for, at du kun overfører User.AccessToken
-variablen til kilder, du har tillid til. Den indeholder oplysninger om brugergodkendelse, som kan skade brugeren, hvis den er kompromitteret.
Brug ikke User.AccessToken
i Meddelelse-noder eller på flow, som du ikke har tillid til.
Test af godkendelsesvariabler
Som standard bruger Testrobot-ruden kontoen for den bruger, der aktuelt er logget på, til at udfylde variablerne User.DisplayName
og User.Id
. Når du tester emner, der bruger godkendelse, vil du måske bruge andre værdier for disse variabler (eller endda en tom værdi).
Du kan f.eks. teste, hvordan specialtegn bruges, eller hvad der sker, hvis variablen er tom.
I følgende tabel vises de kommandoer, der skal udfyldes for disse variabler. Disse kommandoer gælder kun for ruden Testrobot . Du kan ikke bruge dem i en publiceret copilot, der er installeret på en kanal.
Indtast den ønskede kommando iTestrobot rude, ligesom du ville gøre, hvis du normalt chattede med andenpiloten. Du modtager en bekræftelse fra copiloten, hvis det lykkes. Hvis copiloten ikke bruger godkendelse, modtager du en fejlmeddelelse.
Hvis du nulstillerTestrobotruden (eller du foretager ændringer i et emne, der forårsagerTestrobotfor at nulstille automatisk), skal du sende kommandoerne igen.
Variabel |
Kommandoen Brugerdefineret værdi |
Kommandoen Tom værdi |
User.DisplayName |
/debug set bot.UserDisplayName "Value" |
/debug set bot.UserDisplayName "" |
User.Id |
Ikke tilgængelig |
/debug set bot.UserID "" |
Vigtigt!
Af sikkerhedsmæssige årsager kan du ikke udfylde variablen User.Id
med en brugerdefineret værdi (bortset fra en tom eller tom værdi).
Godkendelse ved brug af "Godkend med Microsoft"
Hvis din godkendelsesindstilling er angivet til Godkend med Microsoft, behøver du ikke eksplicit at føje godkendelse til dine emner. I denne konfiguration logføres alle brugere i Microsoft Teams automatisk via deres Teams-legitimationsoplysninger, og de behøver ikke at logge på med et godkendelseskort. Hvis din godkendelsesindstilling er angivet til Manuel, skal du tilføje en Godkend node (selv for Teams-kanalen).
Bemærk
Hvis din godkendelsesindstilling er angivet til Godkend med Microsoft, har du ikke mulighed for eksplicit at føje godkendelse til dine emner.
Tilføjelse af brugergodkendelse til et emne
Noden Godkend beder en bruger om at logge på med et logon-kort. Når en bruger er logget på, bliver vedkommende ikke bedt om det igen, selvom vedkommende når frem til en anden Godkend-node .
Når brugeren angiver brugernavn og adgangskode i prompten (som er vært for identitetsudbyderen), bliver de muligvis bedt om at angive en valideringskode, afhængigt af kanalen. Nogle kanaler, f.eks. Microsoft Teams., kræver ikke en valideringskode fra brugeren.
Når din copilot er konfigureret med SSO, vil brugeren ikke blive bedt om at logge på.
Sådan føjer du en Godkend-node til dit emne:
Gå til siden Emner for den copilot, du vil redigere.
Åbn det emne, du vil føje godkendelsesskabelonen til.
Bemærk
Hvis din copilot er knyttet til Dynamics 365 Customer Service, kan noden Godkendelse ikke være en del af den samtalesti, som copiloten følger, når du første gang hilser brugere velkommen. Ellers vises logonkortet to gange. I stedet skal du føje noden Godkend til et andet emne, der udløses af et brugersvar.
Vælg Tilføj node (+) for at tilføje en meddelelsesnode. Angiv, hvad copiloten skal sige for at angive, at der er ved indtræffe en logonproces.
Vælg Tilføj node (+) under meddelelsesnoden, vælg Kald en handling, og vælg derefter Godkend.
Bemærk
Noden Godkendelse er kun tilgængelig i handlingsvælgeren i slutningen af et dialogtræ (som en bladnode). Den kan ikke tilføjes midt i en dialog. Når den er tilføjet, kan der tilføjes andre noder under den.
Nye noder vises automatisk: en overordnetAuthenticate-node efterfulgt af noder for en successti og en fejlsti.
Brug af User.AccessToken uden en Godkend node
Variablerne User.IsLoggedIn
og User.AccessToken
er tilgængelige, selvom du ikke bruger skabelonen i menupunktet Ring til en handling . Hvis du overfører variablen User.AccessToken
uden først at få brugeren til at gå gennem noden Godkend, bliver brugeren bedt om at logge på på dette trin.
Det kan være nyttigt at overføre variablen User.AccessToken
, hvis du altid forventer, at brugeren er logget på, eller hvis din bruger bliver omdirigeret fra et andet emne. Det anbefales, at du bruger den skabelon, du har fået af angivelsen Kald en handling for at behandle de sager, hvor brugeren ikke kan logge på.
Bemærk
Hvis brugeren logger af midt i en samtale, bliver vedkommende bedt om at logge på igen, hvis emnet kommer til en node, der bruger variablen User.AccessToken
.
Vellykket sti
Successtien svarer til, hvor User.IsLoggedIn = True
og tager højde for, hvornår brugeren er logget på (eller allerede var logget på).
Hvis du har logik, der bruger variablen User.AccessToken
(f.eks. til at oprette forbindelse til et backend-system ved hjælp af et flow til at hente en brugers oplysninger), skal den gå under denne sti.
Mislykket sti
Den mislykket sti svarer til en hvilken som helst anden betingelse end IsLoggedIn = True
. I de fleste tilfælde opstår fejlstien, fordi brugeren ikke kunne logge på, brugte den forkerte adgangskode eller annullerede logonoplevelsen.
Tilføj eventuelle logik, du kan bruge til at behandle denne sag. Som eksempel har vi angivet mulighederne for at forsøge igen eller for at eskalere til en direkte helpdesk-medarbejder. Tilpas den mislykkede stis handlinger for dit specifikke scenario og din brug.
Test dit emne
Sørg for at teste dit emne ved hjælp af en reel bruger, der er konfigureret i identitetsudbyderen. Sørg for, at både vellykkede logon- og mislykkede stier trænes, så der ikke er nogen overraskelser, hvis din bruger ikke logger på, eller der er en fejl med identitetsudbyderens logonoplevelse.