2016-05-30 6 views
0

Ich habe eine Liste von Benutzern, die mehrere Rollen haben. Ich sehe im Grunde Gegenteil von hasAuthority ('systemAccessRole') zum Beispiel, wenn Benutzer systemAccessRole ich möchte ihn auf einer URL blockieren.Wie url basierend auf der Rolle verweigert werden

<sec:intercept-url pattern="/url/global/*" access="hasAuthority('systemAccessRole')"/> 

// user will not allowed to access domestic url if he/she has role systemAccessRole 
<sec:intercept-url pattern="/url/domestic/*" access="hasAuthority('systemAccessRole')"/> 

Was wäre ein Ausdruck, den ich in diesem Fall verwenden kann?

Antwort

0

Verwenden Sie die ! (not) Betreiber:

<sec:intercept-url pattern="/url/domestic/*" access="!hasAuthority('systemAccessRole')"/> 
+0

Ja, das ist es, was ich versuchte, bevor hier veröffentlichen. Aber irgendwie brauche ich sowohl access = "isAuthenticated() und! HasAuthority ('systemAccessRole')" und dann funktioniert es wie Charme. –

+0

[15.2 Web Security Expressions] (http://docs.spring.io/spring-security/site/docs/3.0.x/reference/el-access.html) teilt ein Beispiel. – Abhijeet

Verwandte Themen