UserTokenProvider 接口

public interface UserTokenProvider

OAuth 提供程序。

方法摘要

修饰符和类型 方法和描述
abstract java.util.concurrent.CompletableFuture<TokenResponse> exchangeToken(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String userId, TokenExchangeRequest exchangeRequest)

执行令牌交换操作,例如进行单一登录。

abstract java.util.concurrent.CompletableFuture<TokenResponse> exchangeToken(TurnContext turnContext, String connectionName, String userId, TokenExchangeRequest exchangeRequest)

执行令牌交换操作,例如进行单一登录。

abstract java.util.concurrent.CompletableFuture<java.util.Map<java.lang.String,TokenResponse>> getAadTokens(TurnContext context, AppCredentials oAuthAppCredentials, String connectionName, String[] resourceUrls, String userId)

使用自定义的应用凭据检索已配置连接上特定资源的 Azure Active Directory 令牌。

default java.util.concurrent.CompletableFuture<java.util.Map<java.lang.String,TokenResponse>> getAadTokens(TurnContext turnContext, String connectionName, String[] resourceUrls)

检索已配置连接上特定资源的 Azure Active Directory 令牌。

abstract java.util.concurrent.CompletableFuture<java.util.Map<java.lang.String,TokenResponse>> getAadTokens(TurnContext turnContext, String connectionName, String[] resourceUrls, String userId)

检索已配置连接上特定资源的 Azure Active Directory 令牌。

abstract java.util.concurrent.CompletableFuture<java.lang.String> getOAuthSignInLink(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName)

使用自定义的应用凭据获取要发送给用户的原始登录链接,以便用户登录连接名称。

abstract java.util.concurrent.CompletableFuture<java.lang.String> getOAuthSignInLink(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String userId, String finalRedirect)

使用自定义的应用凭据获取要发送给用户的原始登录链接,以便用户登录连接名称。

abstract java.util.concurrent.CompletableFuture<java.lang.String> getOAuthSignInLink(TurnContext turnContext, String connectionName)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

abstract java.util.concurrent.CompletableFuture<java.lang.String> getOAuthSignInLink(TurnContext turnContext, String connectionName, String userId, String finalRedirect)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

abstract java.util.concurrent.CompletableFuture<SignInResource> getSignInResource(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String userId, String finalRedirect)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

abstract java.util.concurrent.CompletableFuture<SignInResource> getSignInResource(TurnContext turnContext, String connectionName)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

abstract java.util.concurrent.CompletableFuture<SignInResource> getSignInResource(TurnContext turnContext, String connectionName, String userId, String finalRedirect)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

abstract java.util.concurrent.CompletableFuture<java.util.List<TokenStatus>> getTokenStatus(TurnContext context, AppCredentials oAuthAppCredentials, String userId, String includeFilter)

使用自定义的应用凭据为给定用户检索每个已配置连接的令牌状态。

default java.util.concurrent.CompletableFuture<java.util.List<TokenStatus>> getTokenStatus(TurnContext turnContext, String userId)

检索给定用户的每个已配置连接的令牌状态。

abstract java.util.concurrent.CompletableFuture<java.util.List<TokenStatus>> getTokenStatus(TurnContext turnContext, String userId, String includeFilter)

检索给定用户的每个已配置连接的令牌状态。

abstract java.util.concurrent.CompletableFuture<TokenResponse> getUserToken(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String magicCode)

尝试使用自定义的应用凭据检索登录流中的用户的令牌。

abstract java.util.concurrent.CompletableFuture<TokenResponse> getUserToken(TurnContext turnContext, String connectionName, String magicCode)

尝试检索登录流中的用户的令牌。

default java.util.concurrent.CompletableFuture<java.lang.Void> signOutUser(TurnContext turnContext)

使用令牌服务器注销用户。

abstract java.util.concurrent.CompletableFuture<java.lang.Void> signOutUser(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String userId)

使用自定义的应用凭据通过令牌服务器注销用户。

abstract java.util.concurrent.CompletableFuture<java.lang.Void> signOutUser(TurnContext turnContext, String connectionName, String userId)

使用令牌服务器注销用户。

方法详细信息

exchangeToken

public abstract CompletableFuture exchangeToken(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String userId, TokenExchangeRequest exchangeRequest)

执行令牌交换操作,例如进行单一登录。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
oAuthAppCredentials - 适用于 OAuth 的 AppCredentials。
connectionName - 要使用的身份验证连接的名称。
userId - 与令牌关联的用户 ID。
exchangeRequest - 交换请求详细信息,要交换的令牌或要交换的 URI。

Returns:

如果 CompleteableFuture 完成,则返回交换的令牌。

exchangeToken

public abstract CompletableFuture exchangeToken(TurnContext turnContext, String connectionName, String userId, TokenExchangeRequest exchangeRequest)

执行令牌交换操作,例如进行单一登录。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
connectionName - 要使用的身份验证连接的名称。
userId - 与令牌关联的用户 ID。
exchangeRequest - 交换请求详细信息,要交换的令牌或要交换的 URI。

Returns:

如果 CompleteableFuture 完成,则返回交换的令牌。

getAadTokens

public abstract CompletableFuture<>> getAadTokens(TurnContext context, AppCredentials oAuthAppCredentials, String connectionName, String[] resourceUrls, String userId)

使用自定义的 AppCredentials 检索已配置连接上特定资源的 Azure Active Directory 令牌。

Parameters:

context - 与用户当前轮次聊天的上下文。
oAuthAppCredentials - 适用于 OAuth 的 AppCredentials。
connectionName - 使用此机器人配置的 Azure Active Directory 连接的名称。
resourceUrls - 要为其检索令牌的资源 URL 的列表。
userId - 要为其检索令牌的用户 ID。 如果传入 null,则 userId 取自 TurnContext 中的 Activity。

Returns:

resourceUrl 到相应 TokenResponse 的字典。

getAadTokens

public default CompletableFuture<>> getAadTokens(TurnContext turnContext, String connectionName, String[] resourceUrls)

检索已配置连接上特定资源的 Azure Active Directory 令牌。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
connectionName - 使用此机器人配置的 Azure Active Directory 连接的名称。
resourceUrls - 要为其检索令牌的资源 URL 的列表。

Returns:

resourceUrl 到相应 TokenResponse 的字典。

getAadTokens

public abstract CompletableFuture<>> getAadTokens(TurnContext turnContext, String connectionName, String[] resourceUrls, String userId)

检索已配置连接上特定资源的 Azure Active Directory 令牌。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
connectionName - 使用此机器人配置的 Azure Active Directory 连接的名称。
resourceUrls - 要为其检索令牌的资源 URL 的列表。
userId - 要为其检索令牌的用户 ID。 如果传入 null,则 userId 取自 ITurnContext 中的 Activity。

Returns:

resourceUrl 到相应 TokenResponse 的字典。

getOAuthSignInLink

public abstract CompletableFuture getOAuthSignInLink(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName)

使用自定义的 AppCredentials 获取要发送给用户的原始登录链接,以便用户登录连接名称。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
oAuthAppCredentials - 适用于 OAuth 的 AppCredentials。
connectionName - 要使用的身份验证连接的名称。

Returns:

一个 CompletableFuture,表示排队等待执行的工作。 如果 CompleteableFuture 成功完成,则结果包含原始登录链接。

getOAuthSignInLink

public abstract CompletableFuture getOAuthSignInLink(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String userId, String finalRedirect)

使用自定义的 AppCredentials 获取要发送给用户的原始登录链接,以便用户登录连接名称。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
oAuthAppCredentials - 适用于 OAuth 的 AppCredentials。
connectionName - 要使用的身份验证连接的名称。
userId - 将与令牌关联的用户 ID。
finalRedirect - OAuth 流将重定向到的最终 URL。

Returns:

一个 CompletableFuture,表示排队等待执行的工作。 如果 CompleteableFuture 成功完成,则结果包含原始登录链接。

getOAuthSignInLink

public abstract CompletableFuture getOAuthSignInLink(TurnContext turnContext, String connectionName)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
connectionName - 要使用的身份验证连接的名称。

Returns:

表示排队等待执行的工作的任务。 如果任务成功完成,则结果包含原始登录链接。

getOAuthSignInLink

public abstract CompletableFuture getOAuthSignInLink(TurnContext turnContext, String connectionName, String userId, String finalRedirect)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
connectionName - 要使用的身份验证连接的名称。
userId - 将与令牌关联的用户 ID。
finalRedirect - OAuth 流将重定向到的最终 URL。

Returns:

表示排队等待执行的工作的任务。 如果任务成功完成,则结果包含原始登录链接。

getSignInResource

public abstract CompletableFuture getSignInResource(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String userId, String finalRedirect)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
oAuthAppCredentials - OAuth 的凭据。
connectionName - 要使用的身份验证连接的名称。
userId - 将与令牌关联的用户 ID。
finalRedirect - OAuth 流将重定向到的最终 URL。

Returns:

一个 CompletableFuture,表示排队等待执行的工作。 如果 CompleteableFuture 成功完成,则结果包含原始登录链接。

getSignInResource

public abstract CompletableFuture getSignInResource(TurnContext turnContext, String connectionName)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
connectionName - 要使用的身份验证连接的名称。

Returns:

一个 CompletableFuture,表示排队等待执行的工作。 如果 CompleteableFuture 成功完成,则结果包含原始登录链接。

getSignInResource

public abstract CompletableFuture getSignInResource(TurnContext turnContext, String connectionName, String userId, String finalRedirect)

获取要发送给用户的原始登录链接,以便用户登录连接名称。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
connectionName - 要使用的身份验证连接的名称。
userId - 将与令牌关联的用户 ID。
finalRedirect - OAuth 流将重定向到的最终 URL。

Returns:

一个 CompletableFuture,表示排队等待执行的工作。 如果 CompleteableFuture 成功完成,则结果包含原始登录链接。

getTokenStatus

public abstract CompletableFuture<>> getTokenStatus(TurnContext context, AppCredentials oAuthAppCredentials, String userId, String includeFilter)

使用自定义的 AppCredentials 检索给定用户的每个已配置连接的令牌状态。

Parameters:

context - 与用户当前轮次聊天的上下文。
oAuthAppCredentials - 适用于 OAuth 的 AppCredentials。
userId - 为其检索令牌状态的用户 ID。
includeFilter - 要包含的连接的可选逗号分隔列表。 空白将返回所有已配置连接的令牌状态。

Returns:

TokenStatus 数组。

getTokenStatus

public default CompletableFuture<>> getTokenStatus(TurnContext turnContext, String userId)

检索给定用户的每个已配置连接的令牌状态。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
userId - 为其检索令牌状态的用户 ID。

Returns:

TokenStatus 数组。

getTokenStatus

public abstract CompletableFuture<>> getTokenStatus(TurnContext turnContext, String userId, String includeFilter)

检索给定用户的每个已配置连接的令牌状态。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
userId - 为其检索令牌状态的用户 ID。
includeFilter - 要包含的连接的逗号分隔列表。 空白将返回所有已配置连接的令牌状态。

Returns:

TokenStatus 数组。

getUserToken

public abstract CompletableFuture getUserToken(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String magicCode)

尝试使用自定义的 AppCredentials 检索登录流中的用户的令牌。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
oAuthAppCredentials - 适用于 OAuth 的 AppCredentials。
connectionName - 要使用的身份验证连接的名称。
magicCode - (可选) 可选用户输入的代码进行验证。

Returns:

令牌响应。

getUserToken

public abstract CompletableFuture getUserToken(TurnContext turnContext, String connectionName, String magicCode)

尝试检索登录流中的用户的令牌。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
connectionName - 要使用的身份验证连接的名称。
magicCode - (可选) 可选用户输入的代码进行验证。

Returns:

令牌响应。

signOutUser

public default CompletableFuture signOutUser(TurnContext turnContext)

使用令牌服务器注销用户。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。

Returns:

表示排队等待执行的工作的任务。

signOutUser

public abstract CompletableFuture signOutUser(TurnContext turnContext, AppCredentials oAuthAppCredentials, String connectionName, String userId)

使用自定义的 AppCredentials 通过令牌服务器注销用户。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
oAuthAppCredentials - 适用于 OAuth 的 AppCredentials。
connectionName - 要使用的身份验证连接的名称。
userId - 要注销的用户的用户 ID。

Returns:

一个 CompletableFuture,表示排队等待执行的工作。

signOutUser

public abstract CompletableFuture signOutUser(TurnContext turnContext, String connectionName, String userId)

使用令牌服务器注销用户。

Parameters:

turnContext - 与用户当前轮次聊天的上下文。
connectionName - 要使用的身份验证连接的名称。
userId - 要注销的用户的用户 ID。

Returns:

表示排队等待执行的工作的任务。

适用于