Spring Boot Security – используйте токен из файлов cookie, если заголовок авторизации отсутствует ⇐ JAVA
-
Гость
Spring Boot Security – используйте токен из файлов cookie, если заголовок авторизации отсутствует
В настоящее время я аутентифицирую свои запросы по JWK моего сервера авторизации. Я использую пакет spring-boot-starter-oauth2-resource-server в Spring-Boot 2.3. JWT извлекается из заголовка Authorization: Bearer и проверяется на соответствие конечной точке JWK. Моя конфигурация безопасности выглядит так:
SecurityConfig.java
@EnableWebSecurity общественный класс SecurityConfig расширяет WebSecurityConfigurerAdapter { @Autowired защищенная среда окружающей среды; @Override protected void configure(HttpSecurity http) выдает исключение { http.csrf().disable(); http.authorizeRequests().antMatchers("/logs").permitAll(); http.authorizeRequests().antMatchers("/", "/api/**").authenticated(); http.oauth2ResourceServer().jwt(); } } application.properties
spring.security.oauth2.resourceserver.jwt.jwk-set-uri=https://auth.work.com/v1/jwk Внешние пользователи не имеют заголовка Authorization: ... в своих запросах, но вместо этого имеют следующие два файла cookie, составляющие JWT:
auth.token_type = Носитель auth.access_token = Есть ли способ извлечь JWT из файлов cookie и проверить его на сервере аутентификации, если заголовок Authorization: ... отсутствует? Могу ли я извлечь файлы cookie и добавить заголовок к запросу, прежде чем он попытается авторизоваться? Или это может быть даже второй метод в цепочке аутентификации.
В настоящее время я аутентифицирую свои запросы по JWK моего сервера авторизации. Я использую пакет spring-boot-starter-oauth2-resource-server в Spring-Boot 2.3. JWT извлекается из заголовка Authorization: Bearer и проверяется на соответствие конечной точке JWK. Моя конфигурация безопасности выглядит так:
SecurityConfig.java
@EnableWebSecurity общественный класс SecurityConfig расширяет WebSecurityConfigurerAdapter { @Autowired защищенная среда окружающей среды; @Override protected void configure(HttpSecurity http) выдает исключение { http.csrf().disable(); http.authorizeRequests().antMatchers("/logs").permitAll(); http.authorizeRequests().antMatchers("/", "/api/**").authenticated(); http.oauth2ResourceServer().jwt(); } } application.properties
spring.security.oauth2.resourceserver.jwt.jwk-set-uri=https://auth.work.com/v1/jwk Внешние пользователи не имеют заголовка Authorization: ... в своих запросах, но вместо этого имеют следующие два файла cookie, составляющие JWT:
auth.token_type = Носитель auth.access_token = Есть ли способ извлечь JWT из файлов cookie и проверить его на сервере аутентификации, если заголовок Authorization: ... отсутствует? Могу ли я извлечь файлы cookie и добавить заголовок к запросу, прежде чем он попытается авторизоваться? Или это может быть даже второй метод в цепочке аутентификации.
Мобильная версия