Попытка получить больше атрибутов с помощью AWS конечной точки Cognito UserInfo, кажется, не может заставить работать параметр UserInfo Claims - PullRequest
0 голосов
/ 30 апреля 2020

Я использую AWS Cognito User Pool, подключенный к Azure AD Identity Provider нашего клиента. Мне удалось получить некоторую информацию о пользователе, вызывая конечную точку 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'},
  })

после этих стандартных требований . Однако он не вернул нужные мне атрибуты.

Я также пробовал в этом формате, но он тоже не работал:

claims: {
            userinfo: {
              name: {essential: true},
              nickname: {essential: true},
              gender: {essential: true},
              address: {essential: true},
            },
         },

Как мне тогда это сделать? Я видел SAML, возвращенный с использованием SAML-tracer, и он содержал эти атрибуты.

Большое спасибо за любую помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...