Я настроил OAuth2 с Spring Security для моего локального тестового приложения с
- Azure
- Facebook
- GitHub
- Google
Теперь я попытался сделать то же самое с Xing https://dev.xing.com/docs/authentication (OAuth2).
spring:
security:
oauth2:
client:
provider:
xing:
authorization-uri: https://api.xing.com/auth/oauth2/authorize
token-uri: https://api.xing.com/auth/oauth2/token
registration:
xing:
client-id: ${XING_CLIENT_ID}
client-secret: ${XING_CLIENT_SECRET}
client-name: Xing
redirect-uri: '{baseUrl}/login/oauth2/code/{registrationId}'
authorization-grant-type: authorization_code
Похоже на конфигурацию Facebook.
После входа в 4 этапа из документации XING выдается ошибка: [invalid_client] Invalid client id and/or client secret.
Используя отладчик, я обнаружил, что идентификатор клиента и его секрет не добавляются в этот запрос на авторизацию, даже когда запрашивающий GitHub. Теперь мне интересно, потому что я думал, что это важно на этом шаге.
DefaultAuthorizationCodeTokenResponseClient. java Строка 75:
![Request to GitHub](https://i.stack.imgur.com/XyjUA.png)
![Request to Xing](https://i.stack.imgur.com/nIDrR.png)
Насколько я понимаю, на этом этапе для всех поставщиков OAuth2 придется использовать идентификатор клиента и секрет, верно?
Независимо от того, нужно ли мне переопределить Класс DefaultAuthorizationCodeTokenResponseClient каким-либо образом или есть простой способ реализовать решение для XING здесь?