JSF - SpringSecurity zeigt Dinge an ohne es zu dürfen

Phash

Top Contributor
Moin

ich baue gerade SpringSecurity in meine Anwendung ein.

Ich habe einen benutzer und eine role
Anmeldung funktioniert.

ich habe eine Seite, die besteht aus einem Layout ->
Kopfteil
Menue
Content

ich hätte es nun gerne, dass einzelne Bereiche des Menüs nur dann sichtbar sind, wenn man die Rechte dazu besitzt.
Momentan ist es so, dass ich alles sehen darf (sogar ohne eingeloggt zu sein)
Darf die Seiten aber nicht betreten, weil mich dann SpringSecurity zum Login leitet (was ja auch so gehört)

Meine Frage:
Wie krieg ich die Sachen ausgeblendet?
Atm habe ich es so:
[XML] <ul class="menueliste">
<sec:authorize access="hasRole('ROLE_SUCHE')">
<li id="StiftungenSuchen"><h:link outcome="suche" value="Suche" />
</li>
</sec:authorize>
<li id="Hilfe"><h:link outcome="hilfe" value="Hilfe" />
</li></ul>[/XML]

die Seite hat xmlns:sec="http://www.springframework.org/security/tags" eingebunden

Gesichert wird sie über eine SpringXML Config:
[XML]
<intercept-url pattern="^(\/faces\/suche).*" access="hasRole('ROLE_LESEN')" />
<intercept-url pattern="^(\/faces\/liste).*" access="hasRole('ROLE_LESEN')" />[/XML]

Meines dafürhaltens nach, müsste die Seite also nur mit der ROLE_LESEN erreichbar sein, und der Link oben dürfte nur angezeigt werden, wenn ich die ROLE_SUCHEN habe ... oder seh ich da was falsch?

Steh gerade auf dem Schlauch... thx in advance
 

Phash

Top Contributor
ach verdammt...

in der web.xml hat ein Eintrag gefehlt...

[XML]
<context-param>
<param-name>javax.faces.FACELETS_LIBRARIES</param-name>
<param-value>/WEB-INF/spring-security.taglib.xml;
</param-value>
</context-param>
[/XML]
grummel
 

Neue Themen


Oben