Используйте OAuth2 с Spring Security OAuth2 и реактором netty в проекте webflux без api сервлета

Я хочу использовать webflux с реактором netty, но мой проект, который полагается на spring -security-oauth2, в частности с классом https://github.com/spring-projects/spring-security-oauth/blob/master/spring-security-oauth2/src/main/java/org/springframework/security/oauth2/provider/OAuth2Authentication.java, чтобы работать с oauth2, но в этом проекте используется api сервлета, и netty не поддерживает api сервлета. Можно ли использовать netty реактора с проектом spring -security-oauth2?


person Ramon Pires    schedule 08.10.2019    source источник


Ответы (1)


Да, spring-security-oauth2 был переведен в Spring Security 5 и больше не является отдельной библиотекой.

Spring security 5 также поддерживает webflux.

Безопасность Webflux

person Toerktumlare    schedule 08.10.2019
comment
Привет, @thomas, я видел их сообщение в блоге об этом и faq, но образец, который они provide полагается на spring-security-oauth2-client. - person Ramon Pires; 09.10.2019
comment
security-oauth2-client зависит от api сервлета, как вы можете видеть здесь. В моем случае я не хочу использовать tomcat, jetty или undertow, которые предоставляют api сервлета, но я хочу использовать netty реактора, который не является контейнером сервлетов, с webflux. - person Ramon Pires; 09.10.2019
comment
Я думаю, вы что-то неправильно поняли. Тот факт, что у вас есть зависимость от api сервлета, не означает автоматически, что вы используете tomcat / jetty или undertow. Webflux не работает ни с чем, кроме netty. Итак, как только вы выбираете webflux, вам автоматически предоставляется netty в качестве базовой реализации. Api сервлета - это просто набор интерфейсов. - person Toerktumlare; 09.10.2019
comment
Я знаю, что это не означает автоматически, что мне нужен tomcat или другой контейнер сервлетов, но, как вы можете видеть, здесь, сервлет-api должен быть предоставлен во время выполнения контейнером сервлета. Даже если просто добавить эту зависимость в мой проект netty, проект не сможет работать, потому что зависимость должна быть предоставлена ​​контейнером сервлета, в данном случае tomcat, jetty или undertow. Если вы думаете, что есть другой вариант, дайте мне знать. - person Ramon Pires; 09.10.2019
comment
Вы не добавляете эту зависимость, все нужные вам классы включены в библиотеку безопасности Spring. Эта библиотека устарела. - person Toerktumlare; 09.10.2019