У меня есть приложение, которое получает токен доступа от CAS 5.3.9 через грант кода авторизации, и когда я запрашиваю конечную точку / oauth2 / profile с помощью этого токена доступа, я получаю полный профиль пользователя, как и ожидалось.
Однако, когда я получаю свой токен доступа через тип предоставления пароля, я получаю почти пустой профиль пользователя с client_id в качестве его единственного содержимого. Примерно так:
{
"attributes" : { },
"id" : "myClientId"
}
Я заметил, что похожая проблема, похоже, была исправлена для ветки 5.3.X: https://github.com/apereo/cas/pull/3445
Мой вопрос : это ожидаемое поведение? Существуют ли разные классы токенов доступа?
Для воспроизведения сначала получите токен доступа:
curl -X GET -k -i 'https://cas-server:8443/ooscas/oauth2.0/accessToken?grant_type=password&client_id=myClientId&client_secret=secret&username=john&password=johnspassword'
Затем получите профиль пользователя с полученным токеном доступа:
curl -X GET -k -i 'https://cas-server:8443/ooscas/oauth2.0/profile?access_token=AT-5-xLbu5yX-rh0w4xwZB80vWAisSzfvdB9a'