Udostępnij za pośrednictwem


OAuthPrompt Klasa

Definicja

Tworzy nowy monit z prośbą użytkownika o zalogowanie się przy użyciu usługi Logowania jednokrotnego (SSO) platformy Bot Frameworks.

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

Uwagi

Monit podejmie próbę pobrania bieżącego tokenu użytkownika i jeśli użytkownik nie jest zalogowany, wyśle do nich przycisk OAuthCard zawierający przycisk, który może nacisnąć, aby się zalogować. W zależności od kanału użytkownik zostanie wysłany za pośrednictwem jednego z dwóch możliwych przepływów logowania:

- Przepływ automatycznego logowania, w którym po zalogowaniu się użytkownik i usługa logowania jednokrotnego przekaże botowi token dostępu użytkowników przy użyciu działania "zdarzenie" lub "wywołaj". - Przepływ "magic code", w którym po zalogowaniu się użytkownik zostanie wyświetlony przez usługę logowania jednokrotnego w celu wysłania bota sześciocyfrowego kodu potwierdzającego swoją tożsamość. Ten kod zostanie wysłany jako standardowe działanie "komunikat".

Oba przepływy są automatycznie obsługiwane przez element "OAuthPrompt", a jedyną rzeczą, którą należy zachować, jest to, że nie blokujesz działań "zdarzenie" i "wywołaj", na które może czekać monit.

**Uwaga**: należy unikać utrwalania tokenu dostępu z botami w innym stanie. Usługa logowania jednokrotnego Bot Frameworks będzie bezpiecznie przechowywać token w Twoim imieniu. Jeśli przechowujesz je w stanie botów, może on wygaśnie lub zostanie odwołany między kolei.

Podczas wywoływania monitu z kroku kaskadowego należy użyć tokenu w kroku po wyświetleniu monitu, a następnie pozwolić tokenowi wyjść z zakresu na końcu funkcji.

### Monituj użycie

W przypadku użycia z botem DialogSet możesz po prostu dodać nowe wystąpienie monitu jako nazwane okno dialogowe przy użyciu polecenia Add(Dialog). Następnie możesz uruchomić monit z kroku kaskadowego przy użyciu polecenia BeginDialogAsync(String, Object, CancellationToken) lub PromptAsync(String, PromptOptions, CancellationToken). Użytkownik zostanie poproszony o zalogowanie się zgodnie z potrzebami, a token dostępu zostanie przekazany jako argument do osoby wywołującej następny krok kaskadowy.

Konstruktory

OAuthPrompt(String, OAuthPromptSettings, PromptValidator<TokenResponse>)

Inicjuje nowe wystąpienie klasy OAuthPrompt.

Właściwości

Id

Pobiera lub ustawia identyfikator okna dialogowego.

(Odziedziczone po Dialog)
Source

Pobiera informacje o cref="SourceRange"/>.

(Odziedziczone po Dialog)
TelemetryClient

Pobiera lub ustawia wartość IBotTelemetryClient , która ma być używana do rejestrowania.

(Odziedziczone po Dialog)

Metody

BeginDialogAsync(DialogContext, Object, CancellationToken)

Wywoływane po wypchnięciu okna dialogowego do stosu okna dialogowego i aktywowaniu.

ContinueDialogAsync(DialogContext, CancellationToken)

Wywoływane, gdy okno dialogowe monitu jest aktywnym dialogiem, a użytkownik odpowiedział nowym działaniem.

EndDialogAsync(ITurnContext, DialogInstance, DialogReason, CancellationToken)

Wywoływana po zakończeniu okna dialogowego.

(Odziedziczone po Dialog)
GetUserTokenAsync(ITurnContext, CancellationToken)

Próbuje pobrać token użytkownika.

GetVersion()

Pobiera unikatowy ciąg reprezentujący wersję tego okna dialogowego. Jeśli wersja zmieni się między zamianami, system dialogowy emituje zdarzenie DialogChanged.

(Odziedziczone po Dialog)
OnComputeId()

Tworzy identyfikator obliczeniowy okna dialogowego.

(Odziedziczone po Dialog)
OnDialogEventAsync(DialogContext, DialogEvent, CancellationToken)

Wywoływane, gdy zdarzenie zostało podniesione przy użyciu polecenia , za pomocą DialogContext.emitEvent()bieżącego okna dialogowego lub okna dialogowego, które zostało uruchomione w bieżącym oknie dialogowym.

(Odziedziczone po Dialog)
OnPostBubbleEventAsync(DialogContext, DialogEvent, CancellationToken)

Wywołana po wydarzeniu została bąbelkowana do wszystkich rodziców i nie została obsłużona.

(Odziedziczone po Dialog)
OnPreBubbleEventAsync(DialogContext, DialogEvent, CancellationToken)

Wywoływane przed zdarzeniem jest bąbelkowe do elementu nadrzędnego.

(Odziedziczone po Dialog)
RecognizeTokenAsync(OAuthPromptSettings, DialogContext, CancellationToken)

Udostępniona implementacja funkcji RecognizeTokenAsync. Jest to przeznaczone do użytku wewnętrznego, aby skonsolidować implementację protokołu OAuthPrompt i OAuthInput. Logika aplikacji powinna używać tych klas dialogowych.

RegisterSourceLocation(String, Int32)

Rejestruje cref="SourceRange"/> w podanej lokalizacji.

(Odziedziczone po Dialog)
RepromptDialogAsync(ITurnContext, DialogInstance, CancellationToken)

Wywoływane, gdy okno dialogowe powinno ponownie monitować użytkownika o podanie danych wejściowych.

(Odziedziczone po Dialog)
ResumeDialogAsync(DialogContext, DialogReason, Object, CancellationToken)

Wywoływana, gdy okno dialogowe podrzędne zakończyło tę kolej, zwracając kontrolkę do tego okna dialogowego.

(Odziedziczone po Dialog)
SendOAuthCardAsync(OAuthPromptSettings, ITurnContext, IMessageActivity, CancellationToken)

Udostępniona implementacja funkcji SendOAuthCardAsync. Jest to przeznaczone do użytku wewnętrznego, aby skonsolidować implementację protokołu OAuthPrompt i OAuthInput. Logika aplikacji powinna używać tych klas dialogowych.

SetCallerInfoInDialogState(IDictionary<String,Object>, ITurnContext)

Udostępniona implementacja funkcji SetCallerInfoInDialogState. Jest to przeznaczone do użytku wewnętrznego, aby skonsolidować implementację protokołu OAuthPrompt i OAuthInput. Logika aplikacji powinna używać tych klas dialogowych.

SignOutUserAsync(ITurnContext, CancellationToken)

Wy wylogowanie użytkownika.

Metody rozszerzania

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

Tworzy stos okna dialogowego i uruchamia okno dialogowe, wypychając go do stosu.

Dotyczy