У нас было веб-приложение, которое уже использует форму входа в систему, предоставленную Spring-Security, скажем, ERP.Сейчас мы рассматриваем превращение ERP в сервер авторизации oauth2 для авторизации других внутренних сервисов.
ERP все еще обслуживает свой бизнес, и весь доступ требуется авторизовать, но он не основан на маркере доступа, поэтому я думаю, чтоне является клиентом oauth2.Он также не служит сервером ресурсов.
Я прочитал много статей о том, как настроить сервер авторизации oauth2 и разработать приложение с его использованием.Согласно этому комментарию я считаю возможным сделать ERP-авторизацию других сервисов без явной настройки автономным сервером авторизации (это наша конечная цель, но не сейчас):
В контекстеOAuth2, мы можем разбить вещи в соответствии с компонентом, который вы реализуете:
- Клиентское приложение: вполне вероятно, что клиентское приложение OAuth2 на основе сервера уже использует HttpSession, и поэтому имеет смысл использовать Spring Session иВоспользуйтесь всеми преимуществами, которые оно приносит
- Приложение Resource Server: поскольку этот компонент предоставляет API без состояния, который аутентифицирован на предмет использования токена доступа в качестве канала-носителя, HttpSession не используется, и поэтому Spring Session также не подходит
- Приложение сервера авторизации: весьма вероятно, что оно уже использует HttpSession, так же как и в клиентском приложении OAuth2, имеет смысл использовать Spring Session и пользоваться всеми преимуществами, которые оно приносит
Что я собираюсь сделать, это добавить@EnableAuthorizationServer
в конфиг, но я понятия не имею, что будет дальше.У меня вопрос: могу ли я преобразовать существующее приложение в сервер авторизации, сохранив при этом исходный сервис без изменений?С чего и как начать?