【问题标题】:Can I use cognito AccessToken get Cognito identity ID?我可以使用 cognito AccessToken 获取 Cognito 身份 ID 吗?
【发布时间】:2018-01-15 10:29:47
【问题描述】:

我现在使用 cognito 用户池作为“账户系统”,并且还创建了一个身份池,使用 IOS 应用可以让用户注册、登录、获取账户身份 id、同步数据集等操作。

然后我使用Cognito用户池作为Oauth2.0服务器实现Alexa Smart Skill账号链接,已经可以实现账号登录,获取AccessToken。 (我在Alexa论坛发帖,他们回复我只能拿到AccessToken,https://forums.developer.amazon.com/questions/81362/get-id-token-from-alexa-request-when-account-link.html

但是根据我之前的经验,如果要访问Identity pool,获取Identity ID,需要ID_token,所以想问一下,有没有办法可以通过AccessToken或者用户名获取Id_Token或者identity ID?

AWS.config.credentials = new AWS.CognitoIdentityCredentials({
    IdentityPoolId: 'us-east-1:79abd6b8-f141-4756-9272-a09ed0671d1b',
    region: 'us-east-1',
    Logins:{
         'cognito-idp.us-east-1.amazonaws.com/us-east-1_S5kbwuSkN' : id_token
    }
});

【问题讨论】:

  • 不。无法完成(除非他们修复它或添加一些新的 API)
  • 我花了很多时间让一个身份池与多个提供商一起工作,结果证明这是一个死胡同。正在尝试使用运行 Alexa Skills Kit SDK for Node.js 的 Lamda Function 进行此操作。嘘...
  • 我也花了 5 个多小时尝试这样做。这是行不通的。我按照此处列出的步骤操作,并在 15 分钟内完成了工作:stackoverflow.com/questions/45926339/cognito-hosted-ui
  • 我一直在尝试将我从 Alexa 获得的令牌交换为 lambda 函数(alexa 技能)中的身份 ID。不知道这是否相似。

标签: oauth-2.0 amazon-cognito alexa-skills-kit ifttt


【解决方案1】:

您只能使用 id_token 获取身份 id 来访问身份池。要获取 id_token,您需要在 Cognito 用户池中配置您的应用程序客户端以将“openid”作为范围。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-01
    • 1970-01-01
    • 2015-07-07
    • 2020-04-21
    • 1970-01-01
    • 2017-11-12
    • 2021-01-02
    • 1970-01-01
    相关资源
    最近更新 更多