当前位置: 首页 > 知识库问答 >
问题:

如何从AWS Cognito中的所有提供者注销?

田鸿彩
2023-03-14

我在web应用程序中使用AWS Cognito身份验证。用户可以使用三个身份提供者之一进行身份验证:cognito用户池(通过用户名和密码)、facebook和google。以下是我获取凭据的方式:

AWS.config.credentials = new AWS.CognitoIdentityCredentials({
    IdentityPoolId: identityPoolId,
    Logins: logins
});
AWS.config.credentials.get(err => {
    console.log("Amazon Cognito Identity", 
    AWS.config.credentials.identityId);
});

登录-对象,可以包含来自cognito、facebook和google的令牌。

如果用户单击注销按钮,web应用程序应该做什么?如果当前用户存在(当前用户仅存在于cognito用户名、密码验证中),我可以执行userPool.getCurrentUser().signOut(),但如果有人使用facebook或google登录,我该怎么办?

共有2个答案

乜钱明
2023-03-14

JS SDK有一个名为clearCachedId的方法,它应该擦除本地状态并对此有所帮助。

http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityCredentials.html

那鹏
2023-03-14

这就足够了(注销),会话令牌将过期,如果不使用新令牌,该用户将无法再次登录。您的cognito池仍将有提供者用户。。但是这很好,如果您删除它并且用户再次登录,它将是另一个用户,因此您需要将记录保存在cognito数据库中

 类似资料:
  • 如何通过提供已配置用户的用户名和密码获得AWS令牌表单? 我想做的是有一个URL,它接受user/pass作为postparams并返回一个令牌。这里记录的三个“允许的OAuth流”都没有这个或任何其他网址 编辑:邮递员怎么做?我正在寻找类似于: 调用aws url并为池中的某个用户提供user/Pass AWS返回一个令牌 包括令牌与资源服务器的每个请求 资源服务器验证令牌

  • 我们的javaspring应用程序(sp)允许客户端进行SSO集成。我们计划引入SLO(单点注销)作为安全审计要求的一部分。 我有一个疑问,如果我们的应用程序请求SLO到idp,那么特定客户的所有其他开放应用程序都会注销? 我们不想让客户的其他应用程序因我们的应用程序而注销。 请告知。如果SAML SLO请求只会影响请求注销的唯一服务提供商或客户SSO登录的所有服务提供商?

  • 提供者(Provider) 是一个连接以太坊网络的抽象,用与查询以太坊网络状态或者发送更改状态的交易。 EtherscanProvider 和 InfuraProvider 提供连接公开的第三方节点服务提供商,无需自己运行任何以太坊节点。 JsonRpcProvider 和 IpcProvider 允许连接到我们控制或可以访问的以太坊节点(包括主网,测试网,权威证明(PoA)节点或Ganache)

  • 问题内容: 我有字典。 如何将的所有值提取到列表中? 问题答案: 如果你只需要字典的键,和使用:。 如果你只需要在字典中的值,和使用:。 如果您想同时使用键和值,请使用:返回一个元组列表。

  • 我正在用Kotlin和Dagger 2开发一个Android项目。我有一个,我在其中定义了一些提供程序函数。 我看到有些人使用kotlin,有些人使用Dagger的来注释提供者函数: > 注释和/或的动机是什么?背后的原因是什么,或者这样做的好处是什么? 使用和哪个更好?或者哪一个都没问题?或者我应该两个都用,如果是,那么两个都用的原因是什么?

  • 问题内容: 当用户从垂直设备注销时,我要从他迄今为止登录的所有设备中注销。我在Laravel中如何做。 我已经使用Redis通过安装“ predis / predis”:“〜1.0”将userId保留在Session中。 这是我用于登录和注销的控制器: 它已成功登录并注销,但不会终止其他设备上的所有会话。 我该如何解决这个问题? 问题答案: 因此,redis键名中的错字是问题,因为写数据使用的 是