#spring #spring-boot #spring-security
Вопрос:
Мне нужна логика, примерно эквивалентная:
.antMatchers("/home/**").hasAnyAuthority("ROLE_1", "ROLE_2")
.antMatchers("/home/**").not().hasAuthority("ROLE_BAD")
Где пользователь будет включен, если у него есть ОПЦИЯ 1 или 2, и у них нет ПЛОХИХ. Aka
(ROLE_1 || ROLE_2) amp;amp; ROLE_BAD
Однако, когда я пробую приведенный выше код, применяется только второе ограничение, и любая аутентификация разрешена, если у нее нет ROLE_BAD. Как я могу заставить оба параметра применяться к одному и тому же URL-адресу?
Я также пытался использовать ! оператор для отрицания, но это не работает с «hasAnyAuthority», потому что он рассматривает его как другое ИЛИ условие.
Комментарии:
1. Используйте antMatchers(«/home/**»).доступ(«Ваше выражение») весенние документы docs.spring.io/spring-security/site/docs/4.2.x/reference/html/…