Comments 5
Мощный разбор. Я правильно понимаю, что это основано на личном опыте в проде?
Ждем продолжение!
curl --location --request POST 'http://localhost:9091/oauth2/token?grant_type=authorization_code&code=M6MsgrcmEa6eKlslkgDoS3mEOSuNoN827eLFUu6-k2Vi1v-xW17it7ojPC6QXbnjVsvCVCvfkIWNRq8kmMZBcPcre2R2N9AvNSxwLCMIiO0q4SRjWcoYrOFztvputvxS&redirect_uri=http://localhost:8080/code' \--header 'Authorization: Basic dGVzdC1jbGllbnQ6dGVzdC1jbGllbnQ='Обратите внимание, что в последнем запросе у нас обязательно должен быть заголовок Authorization с типом Basic, в котором находится base64 строка следующего вида: test-client:test-client. Это наши clientId и clientSecret, которые мы указывали при создании RegisteredClient.
Я понимаю, что вот этот момент - это костыль? Это не относится к authorization code flow. У вас разрешена CLIENT_CREDENTIALS авторизация и вы её используете, чтоб получить refresh_token. В public клиентах, refresh token не возращается по-умолчанию.
SSO на базе Spring Authorization Server. Можно ли в прод?