АвторизаціяServerConfigurerAdapter застаріла


9

Я хотів би використовувати Oauth2автентифікацію в API весняного відпочинку для входу. Але я отримав деяке попередження, AuthorizationServerConfigurerAdapter is deprecatedі дивіться посібник з міграції OAuth 2.0 для Spring Security 5.

Документи класу

Я перевірив там, але не знайшов багато посібника з міграції. Хто-небудь, будь ласка, поділіться повним прикладом для цього.

Спасибі заздалегідь...


Я виявив ту саму проблему, намагаючись знайти найкращий підхід, як реалізувати автентифікацію та авторизацію за допомогою OAuth 2 через Spring Security. Можливо, мені не вистачає глибших знань про OAuth, але сподіваюся розібратися з проблемою вивчення.
Пітер С.

2
Я намагався знизити версію spring-security-oauth2 з 2.4.0.RELEASE до 2.3.8.RELEASE, і схоже, що вона позначена як застаріла з 2.4.0.RELEASE. Обидві версії - з сховища Maven -> Maven . Я б тільки здогадувався, чи не працює посібник з міграції для сервера авторизації.
Пітер С.

Відповіді:


6

Проект Spring Security OAuth2 наразі застарілий, і команда Spring Security вирішила більше не надавати підтримку серверам авторизації. Вони збираються переглянути це рішення, але наразі нічого не відомо, і я б радив вам розглянути інші рішення, наприклад, Keycloak .


1
Це правильна відповідь, чому AuthorizationServerConfigurerAdapterвін оприлюднений. Будемо сподіватися, що Весна перегляне ...
ЙогаБ

Чи є у вас підручник чи ресурс, який допоможе перейти зі старого Spring-Security-OAuth2 на сервер авторизації з відкритим кодом як Keycloak, Gluu?
Geany

1

Для роботи з AuthorizationServer (а також AuthorizationServerConfigurerAdapter) у додатку Spring Boot можна використовувати Spring Security OAuth Boot 2 Autoconfig . Незважаючи на те, що він здається в режимі обслуговування, він оновлюється активно, його нова версія - 2.2.3, що відповідає версії Spring Boot версії 2.2.3. Її довідник говорить, що:

Зауважте, що вам потрібно вказати версію для spring-security-oauth2-autoconfigure , оскільки вона вже не керується Spring Boot, хоча вона все одно повинна відповідати версії Boot

Я використовував це у своєму демо-проекті, і все здається нормально. Отже, для роботи з OAuth2, JWT маркерами, серверами авторизації та ресурсів все, що вам потрібно, - це додати його до свого проекту:

    <dependency>
        <groupId>org.springframework.security.oauth.boot</groupId>
        <artifactId>spring-security-oauth2-autoconfigure</artifactId>
        <version>2.2.3.RELEASE</version>
    </dependency>

Мій демонстраційний проект .


1
Не слід пропонувати людям використовувати проект, який наразі застарілий.
Анар Султанов,

1
Я не пропонував використовувати застарілий проект. spring-security-oauth2-autoconfigureще не застаріло, і я попередив, що він знаходиться в режимі обслуговування. Питання стосувалося можливості використання AuthorizationServer- я продемонстрував таку можливість.
Cepr0
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.