У меня есть сервер аутентификации, сконфигурирован весной ссмог oauth2 фишку от Идент сервера
clients
.inMemory()
.withClient("my-web-app")
.secret("my-web-app-secret")
.authorizedGrantTypes(//
"authorization_code",//
"refresh_token",//
"password"//
).scopes("openid")
Теперь я хочу разработать приложение командной строки для веб-приложение. Поэтому мне нужно зарегистрировать еще одного клиента с отдельным идентификатором клиента и секретом. я сделал что-то вроде этого
.and()
.inMemory()
.withClient("my-cli")
.secret("my-cli-secret")
.authorizedGrantTypes("authorization_code","client_credentials")
.scopes("read","write","trust").authorities("ROLE_USER");
То, что я хочу достичь, это использовать просто предоставить имя пользователя/пароль и приложение-клиент должен иметь возможность получить маркер аутентификации от сервера AUTH.
Что я пробовал и понял, я должен использовать грант владельца ресурса. После этого я должен использовать пружину Oauth2restTemplate. Проблема в этой конфигурации, когда я м ударять tokenuri я получаю
{
error: "unauthorized"
error_description: "Full authentication is required to access this resource"
}
и каждый раз, когда она сталкивается с анонимным пользователем.
Добавьте StackTrace после включения уровня отладки для пакета:. 'Org.springframework *' –