Настройка многих типов грантов OAuth2 в Spring Security - PullRequest
0 голосов
/ 09 января 2019

У меня есть приложение Spring Boot, которое использует два типа предоставления OAuth2:

  • client_credentials
  • Элемент списка

код авторизации

На самом деле я не нашел пример конфигурации Spring Security для настройки обоих grant_types.

То, что я на самом деле делаю, глупо:

public class CustomTokenServices implements ResourceServerTokenServices {
...
    @Override
    public OAuth2Authentication loadAuthentication(String accessToken) {
        OAuth2Authentication authenticationAsUserInfo = null;

        try {
            authenticationAsUserInfo = loadAuthenticationAsUserInfo(accessToken);
        } catch (Exception e) {
            logger.warn(e.getMessage());
        }

        if (authenticationAsUserInfo == null) {
            return loadAuthenticationAsRemote(accessToken);
        }
        return authenticationAsUserInfo;
    }
...
}

Это решение if-else, которое на самом деле не является удобным решением: (

...