【发布时间】:2020-08-14 10:15:29
【问题描述】:
我正在使用连接到我们客户的 Azure AD 身份提供商的 AWS Cognito 用户池。我能够通过调用 UserInfo 端点获取一些用户信息,但无法获取更多属性。我认为仅在 Cognito 中映射它们就足够了,但事实并非如此。显然,我必须使用“声明”参数在请求中指定我想要的 UserInfo 声明?我试着做这样的事情:
await axios({
method: 'post',
baseURL: Env.AWS_COGNITO_BASE_URL,
url: '/oauth2/token',
data: qs.stringify({
grant_type: 'authorization_code',
client_id: Env.AWS_COGNITO_CLIENT_ID,
redirect_uri: this.redirectURI,
code,
claims: ['name', 'gender']
}),
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
})
关注these standard claims。但是,它没有返回我想要的属性。
我也尝试过这种格式,但也没有用:
claims: {
userinfo: {
name: {essential: true},
nickname: {essential: true},
gender: {essential: true},
address: {essential: true},
},
},
那我该怎么做呢?我已经看到使用 SAML-tracer 返回的 SAML,它包含这些属性。
非常感谢您的帮助!
【问题讨论】:
标签: oauth-2.0 azure-active-directory amazon-cognito openid openid-connect