Amazon web services aws放大身份验证…如何在成功的身份验证登录上访问令牌?
我试图弄清楚如何使用Auth库访问从aws amplify接收回来的accessToken、refreshToken和idToken 文档中的示例: 我的用法示例:Amazon web services aws放大身份验证…如何在成功的身份验证登录上访问令牌?,amazon-web-services,authentication,aws-amplify,Amazon Web Services,Authentication,Aws Amplify,我试图弄清楚如何使用Auth库访问从aws amplify接收回来的accessToken、refreshToken和idToken 文档中的示例: 我的用法示例: const user=wait Auth.sign(电子邮件、密码) user有一组无法访问的属性,包括我需要的所有内容。在文档中,不清楚如何获取这些属性,因为示例都记录了结果。有什么想法吗?我相信你能做到 Auth.currentCredentials(credentials => { const tokens = Au
const user=wait Auth.sign(电子邮件、密码)代码>
user
有一组无法访问的属性,包括我需要的所有内容。在文档中,不清楚如何获取这些属性,因为示例都记录了结果。有什么想法吗?我相信你能做到
Auth.currentCredentials(credentials => {
const tokens = Auth.essentialCredentials(credentials);
})
哪里将返回所有代币
希望这有帮助。Auth.currentSession()
将返回一个包含accessToken
、idToken
和refreshtToken
的CognitoUserSession
Auth.currentSession().then(res=>{
let accessToken = res.getAccessToken()
let jwt = accessToken.getJwtToken()
//You can print them to see the full objects
console.log(`myAccessToken: ${JSON.stringify(accessToken)}`)
console.log(`myJwt: ${jwt}`)
})
CognitoUserSession实际上是以下内容:CognitoUserSession{idToken:CognitoIdToken,refreshToken:CognitoRefreshToken,accessToken:CognitoAccessToken,clockDrift:0}
在这一点上,可以通过简单的点表示法来访问该对象中的对
示例:检索accessToken并登录到控制台
Auth.currentSession().then(data=>console.log(data.accessToken));
结果将是一个CognitoAccessToken,其形式为CognitoAccessToken{jwtToken:'',负载:'}
如果您只想在CognitoAccessToken中使用jwtToken
,那么它只是一个点符号(以log to console为例):
Auth.currentSession().then(data=>console.log(data.accessToken.jwtToken));
注意:如果需要,此方法还会刷新当前会话()。9,从当前会话获取JWT令牌:
import Auth from '@aws-amplify/auth';
Auth.currentSession().then(data => console.log("JWT", data.getAccessToken().getJwtToken()));
如欲查询:
我在aws amplify repo中发布了这个问题,一位合作者回答说:Auth.currentSession().accessToken.JWTToken这对我有效!如果您使用的是Amplify和AWS并且需要sub(ID),还可以添加console.log(`sub:${JSON.stringify(accessToken.payload.sub)}`)
。
const checkCognitoUserSession = async () => {
const getAwsCredentials = await Auth.currentCredentials();
const awsCredentials = await Auth.essentialCredentials(getAwsCredentials);
// accessKeyId, secretAccessKey, sessionToken post login
return { awsCredentials };
};