Partager via


OAuthPrompt Classe

Définition

Crée une invite qui demande à l’utilisateur de se connecter à l’aide du service d’authentification unique (SSO) Bot Frameworks.

public class OAuthPrompt : Microsoft.Bot.Builder.Dialogs.Dialog
type OAuthPrompt = class
    inherit Dialog
Public Class OAuthPrompt
Inherits Dialog
Héritage
OAuthPrompt

Remarques

L’invite tente de récupérer le jeton actuel des utilisateurs et, si l’utilisateur n’est pas connecté, il leur envoie une « OAuthCard » contenant un bouton qu’ils peuvent appuyer pour se connecter. En fonction du canal, l’utilisateur est envoyé via l’un des deux flux d’authentification possibles :

- Flux de connexion automatique dans lequel une fois que l’utilisateur se connecte et que le service d’authentification unique transfèrent le bot, le jeton d’accès des utilisateurs à l’aide d’une activité « event » ou « invoke ». - Flux de « code magique » où une fois que l’utilisateur se connecte, il est invité par le service SSO à envoyer au bot un code à six chiffres confirmant son identité. Ce code sera envoyé en tant qu’activité « message » standard.

Les deux flux sont automatiquement pris en charge par « OAuthPrompt » et la seule chose dont vous devez faire attention est que vous ne bloquez pas les activités « event » et « invoke » que l’invite peut attendre.

**Remarque**: Vous devez éviter de conserver le jeton d’accès avec l’autre état de vos bots. Le service d’authentification unique Bot Frameworks stocke le jeton en toute sécurité en votre nom. Si vous le stockez dans votre état de bots, il peut expirer ou être révoqué entre les tours.

Lorsque vous appelez l’invite à partir d’une étape en cascade, vous devez utiliser le jeton dans l’étape qui suit l’invite, puis laisser le jeton sortir de l’étendue à la fin de votre fonction.

### Invite Utilisation

En cas d’utilisation avec votre bot, vous pouvez simplement ajouter une nouvelle instance de l’invite DialogSet en tant que boîte de dialogue nommée à l’aide Add(Dialog)de . Vous pouvez ensuite démarrer l’invite à partir d’une étape en cascade à l’aide de BeginDialogAsync(String, Object, CancellationToken) ou PromptAsync(String, PromptOptions, CancellationToken)de . L’utilisateur est invité à se connecter en fonction des besoins et son jeton d’accès est passé en tant qu’argument aux appelants à l’étape en cascade suivante.

Constructeurs

OAuthPrompt(String, OAuthPromptSettings, PromptValidator<TokenResponse>)

Initialise une nouvelle instance de la classe OAuthPrompt.

Propriétés

Id

Obtient ou définit l’ID de la boîte de dialogue.

(Hérité de Dialog)
Source

Obtient les informations du cref="SourceRange"/>.

(Hérité de Dialog)
TelemetryClient

Obtient ou définit le à utiliser pour la IBotTelemetryClient journalisation.

(Hérité de Dialog)

Méthodes

BeginDialogAsync(DialogContext, Object, CancellationToken)

Appelé lorsqu’une boîte de dialogue d’invite est envoyée dans la pile des dialogues et est en cours d’activation.

ContinueDialogAsync(DialogContext, CancellationToken)

Appelé lorsqu’une boîte de dialogue d’invite est le dialogue actif et que l’utilisateur a répondu avec une nouvelle activité.

EndDialogAsync(ITurnContext, DialogInstance, DialogReason, CancellationToken)

Appelé à la fin de la boîte de dialogue.

(Hérité de Dialog)
GetUserTokenAsync(ITurnContext, CancellationToken)

Tente d’obtenir le jeton de l’utilisateur.

GetVersion()

Obtient une chaîne unique qui représente la version de cette boîte de dialogue. Si la version change entre les tours, le système de dialogue émet un événement DialogChanged.

(Hérité de Dialog)
OnComputeId()

Génère l’ID de calcul pour la boîte de dialogue.

(Hérité de Dialog)
OnDialogEventAsync(DialogContext, DialogEvent, CancellationToken)

Appelé lorsqu’un événement a été déclenché, à l’aide DialogContext.emitEvent()de , par la boîte de dialogue active ou par un dialogue que le dialogue actuel a démarré.

(Hérité de Dialog)
OnPostBubbleEventAsync(DialogContext, DialogEvent, CancellationToken)

Appelé après un événement a été mis en bulles à tous les parents et n’a pas été géré.

(Hérité de Dialog)
OnPreBubbleEventAsync(DialogContext, DialogEvent, CancellationToken)

Appelé avant qu’un événement ne soit mis en bulles sur son parent.

(Hérité de Dialog)
RecognizeTokenAsync(OAuthPromptSettings, DialogContext, CancellationToken)

Implémentation partagée de la fonction RecognizeTokenAsync. Il est destiné à une utilisation interne, afin de consolider l’implémentation des OAuthPrompt et OAuthInput. La logique d’application doit utiliser ces classes de dialogue.

RegisterSourceLocation(String, Int32)

Inscrit un cref="SourceRange"/> à l’emplacement fourni.

(Hérité de Dialog)
RepromptDialogAsync(ITurnContext, DialogInstance, CancellationToken)

Appelé lorsque la boîte de dialogue doit réinviter l’utilisateur pour l’entrée.

(Hérité de Dialog)
ResumeDialogAsync(DialogContext, DialogReason, Object, CancellationToken)

Appelé lorsqu’un dialogue enfant a terminé ce tour, en retournant le contrôle à ce dialogue.

(Hérité de Dialog)
SendOAuthCardAsync(OAuthPromptSettings, ITurnContext, IMessageActivity, CancellationToken)

Implémentation partagée de la fonction SendOAuthCardAsync. Il est destiné à une utilisation interne, afin de consolider l’implémentation des OAuthPrompt et OAuthInput. La logique d’application doit utiliser ces classes de dialogue.

SetCallerInfoInDialogState(IDictionary<String,Object>, ITurnContext)

Implémentation partagée de la fonction SetCallerInfoInDialogState. Il est destiné à une utilisation interne, afin de consolider l’implémentation des OAuthPrompt et OAuthInput. La logique d’application doit utiliser ces classes de dialogue.

SignOutUserAsync(ITurnContext, CancellationToken)

Déconnecte l’utilisateur.

Méthodes d’extension

RunAsync(Dialog, ITurnContext, IStatePropertyAccessor<DialogState>, CancellationToken)

Crée une pile de dialogues et démarre une boîte de dialogue, en la poussant vers la pile.

S’applique à