Как использовать троичный оператор в конфигурацию Spring Security XML для передачи роли - PullRequest
0 голосов
/ 05 марта 2020

Я хотел бы оценить, должен ли я применять безопасность для определенного URL.

Я попробовал ниже способы, но не повезло.

<intercept-url pattern="/monitoring" 
      access="'${monitor.status}' == 'secured' ? 'ROLE_FIND' : permitAll"/>  

<intercept-url pattern="/monitoring" 
    access="'${monitor.status}' == 'secured' ? ROLE_FIND : permitAll"/>  

<intercept-url pattern="/monitoring"
    access="'${monitor.status}' == 'secured' ? 'ROLE_FIND' : 'IS_AUTHENTICATED_ANONYMOUSLY'"/>

Не повезло с этим. Какой правильный синтаксис для этого. Я не могу использовать выражения на основе. Пожалуйста, предложите мне только этот стиль.

Все вышесказанное говорит, что access denied, даже правильное разрешение есть. Я не уверен, что это из-за той или иной конфигурации в моем проекте.

РЕДАКТИРОВАТЬ: ${monitor.status} исходит из файла свойств.

1 Ответ

0 голосов
/ 05 марта 2020

Попробуйте сделать это, используя [SpEL] [1] как

<intercept-url pattern="/monitoring" access="#{'${monitor.status}' == 'secured' ? 'ROLE' : 'IS_AUTHENTICATED_ANONYMOUSLY'}"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...