OAuthPrompt 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
建立新的提示,要求使用者使用 Bot Frameworks 單一登錄 (SSO) 服務登入。
public class OAuthPrompt : Microsoft.Bot.Builder.Dialogs.Dialog
type OAuthPrompt = class
inherit Dialog
Public Class OAuthPrompt
Inherits Dialog
- 繼承
備註
提示會嘗試取得使用者目前的令牌,若使用者未登入,會寄送一張包含按鈕的「OAuthCard」,讓使用者按下登入。 視通道而定,使用者將會透過兩個可能的登入流程之一傳送:
- 自動登入流程,使用者登入後,SSO 服務會透過「事件」或「呼叫」活動轉發使用者存取權杖。 - 「魔法碼」流程,使用者登入後,SSO 服務會提示他們傳送六位數的驗證碼給機器人確認身份。 此代碼將作為標準的「訊息」活動發送。
這兩種流程都會自動由「OAuthPrompt」支援,唯一需要注意的是不要封鎖提示可能等待的「事件」和「呼叫」活動。
**注意**:你應該避免讓存取權杖以機器人的其他狀態持續存在。 Bot Frameworks SSO 服務會代表您安全地儲存令牌。 如果您將其儲存在 Bot 中,表示它可能會過期或會在兩次之間撤銷。從瀑布式步驟中呼叫提示時,您應該在提示之後的步驟內使用令牌,然後讓令牌超出函式結尾的範圍。
### 提示使用
當你的機器人 DialogSet 使用時,你可以直接用 新增一個提示作為命名對話 Add(Dialog)框的實例。 然後,您可以使用 BeginDialogAsync(String, Object, CancellationToken) 或 PromptAsync(String, PromptOptions, CancellationToken),從瀑布式步驟啟動提示。 使用者會被要求按需登入,並以存取權杖作為參數傳遞給呼叫者下一個瀑布步驟。
建構函式
| 名稱 | Description |
|---|---|
| OAuthPrompt(String, OAuthPromptSettings, PromptValidator<TokenResponse>) |
初始化 OAuthPrompt 類別的新執行個體。 |
屬性
| 名稱 | Description |
|---|---|
| Id |
取得或設定對話的 ID。 (繼承來源 Dialog) |
| Source |
取得 cref=“SourceRange”/> 的資訊。 (繼承來源 Dialog) |
| TelemetryClient |
取得或設定 IBotTelemetryClient 用於記錄。 (繼承來源 Dialog) |
方法
擴充方法
| 名稱 | Description |
|---|---|
| RunAsync(Dialog, ITurnContext, IStatePropertyAccessor<DialogState>, CancellationToken) |
建立對話堆疊並啟動對話,並將它推送至堆疊。 |