我可以使用cognito AccessToken获取Cognito身份证吗?

问题描述:

我现在使用cognito用户池作为“帐户系统”,并且还创建了身份池,使用IOS应用我可以让用户注册,登录,获取帐户身份标识,同步数据集等操作。我可以使用cognito AccessToken获取Cognito身份证吗?

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

但是根据我以前的经验,如果你想访问身份池,得到身份证,需要ID_token,所以我想问,有没有一种方法可以通过AccessToken或用户名获得Id_Token或身份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 
    } 
}); 
+0

没有。无法完成(除非他们修复它或添加一些新的API) – agent420

+0

我花了大量时间让一个身份池与多个提供者一起工作,事实证明这是一个死胡同的解决方案。试图用Lamda函数为Node.js运行Alexa技能套件SDK。 Sheesh ... – njlaboratory

您只能使用id_token获取身份标识以访问标识池。要获得id_token,您需要在Cognito用户池中将您的应用程序客户端配置为具有'openid'作为范围。