我的要求如下:
假设有许多网址来自" dbservice"。例如 1. / dbservice / add 2. / dbservice / update 3. / dbservice / remove etc
因此,对于每个网址,我必须编写单独的行(考虑到它们具有不同的访问级别)。 所以它看起来像这样:
<security:intercept-url pattern="/dbservice/add" access="permitAll"/>
<security:intercept-url pattern="/dbservice/update" access="isAuthenticated"/>
<security:intercept-url pattern="/dbservice/remove" access="hasRole('ROLE_ADMIN')"/>
如果字符串dbservice发生变化,那么我必须更新我不想要的任何地方。
有没有办法让我只声明dbservice一次,我会在详细的url中使用一些变量,或者可能是这样的:
<security:intercept-url pattern="/dbservice">
<security:intercept-url pattern="/add" access="permitAll"/>
<security:intercept-url pattern="/remove" access="hasRole('ROLE_ADMIN')"/>
</security:intercept-url>
还要考虑http中的其他标签,例如custom-filter和remember-me。
答案 0 :(得分:0)
试试这个
<http pattern="/dbservice/**">
<intercept-url pattern="/add" access="permitAll" />
<intercept-url pattern="/remove" access="hasRole('ROLE_ADMIN')" />
</http>