AWS Cognito Cookie存储 [英] AWS Cognito cookie storage

查看:22
本文介绍了AWS Cognito Cookie存储的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将Cognito设置为使用Cookie而不是本地存储作为凭据,这样我就可以保持用户在域之间登录,例如x.foo.com和y.foo.com。第一步是让它在本地主机上工作,但我被卡住了。

documentation显示简单的配置更改就可以解决问题?

以下调试消息将发送到控制台:

[DEBUG] 37:08.223 AuthClass 
Object { idToken: {…}, refreshToken: {…}, accessToken: {…}, clockDrift: 0 }
ConsoleLogger.js:87

[DEBUG] 37:08.228 Credentials - No Cache module registered in Amplify ConsoleLogger.js:84

[DEBUG] 37:08.230 Credentials - set credentials from session ConsoleLogger.js:84

[DEBUG] 37:08.230 Credentials - No Cognito Federated Identity pool provided ConsoleLogger.js:84

[DEBUG] 37:08.230 AuthClass - cannot get cognito credentials No Cognito Federated Identity pool provided ConsoleLogger.js:94

[DEBUG] 37:08.231 AuthClass - Failed to get user from user pool ConsoleLogger.js:84

[ERROR] 37:08.232 AuthClass - Failed to get the signed in user No current user
在指定cookieStorage配置时,您似乎需要手动应用缓存实例?我如何做到这一点?它能解决问题吗?

推荐答案

此配置有效:

{
    region: 'eu-west-1',
    userPoolId: 'eu-west-1_XXXXXX',
    userPoolWebClientId: 'XXXXXX',
    mandatorySignIn: false,
    cookieStorage: {
      domain: 'localhost',
      secure: false,
      path: '/',
      expires: 365,
    },
  }

具体而言,除非您使用的是HTTPS,否则localhost的Secure必须为False(Firefox会忽略localhost的这一点,但Chrome和Safari不会)。

这篇关于AWS Cognito Cookie存储的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆