You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Lyallex <ly...@gmail.com> on 2008/12/11 10:27:25 UTC
[Struts2] protecting resources via Actions
Hi Experts
I have an application that supports a number of roles including staff
and manager
I have a resource (/secure/staff/staff.jsp) that is protected by a
security constraint in web.xml
<security-constraint>
...
<web-resource-collection>
...
<url-pattern>/secure/staff/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>staff</role-name>
</auth-constraint>
</security-constraint>
...
If I log in as a manager and try to directly access
../myapp/secure/staff/staff.jsp I get a 403 Forbidden
If log in as a manager and try to access the resource via an action
that forwards to the resource on SUCCESS
for example ../myapp/SomeAction.action is defined in staff.xml (which
is included in struts.xml) thusly
<action name="AddStaffAccount" class="foo.bar.baz.SomeAction"
method="someMethod">
<result name="success">/secure/staff/staff.jsp</result>
...
</action>
I get access to the protected resource even though I am logged in as
an account that does not have that role.
I'm relatively new to Struts having mostly developed in plain old J2EE
jsp/servlets
Somehow I need to be able to apply the security constraint when the
action forwards to the resource on success.
I really don't want to have to start testing roles in my actions as
this seems to negate the benefits of using declarative security.
I can't find anything about this in my book (Struts2 in Action).
Any advice much appreciated
Thanks
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: [Struts2] protecting resources via Actions
Posted by Lyallex <ly...@gmail.com>.
2008/12/11 Lyallex <ly...@gmail.com>:
> Hi Experts
>
> I have an application that supports a number of roles including staff
> and manager
Er, apologies for this ... another google search has uncovered
http://struts.apache.org/2.0.14/struts2-core/apidocs/org/apache/struts2/interceptor/RolesInterceptor.html
It seems to do what I wanted ... there is another problem which I will
try to solve before posting again.
looks sheepish :-(
>
> I have a resource (/secure/staff/staff.jsp) that is protected by a
> security constraint in web.xml
>
> <security-constraint>
> ...
> <web-resource-collection>
> ...
> <url-pattern>/secure/staff/*</url-pattern>
> </web-resource-collection>
> <auth-constraint>
> <role-name>staff</role-name>
> </auth-constraint>
> </security-constraint>
>
> ...
>
>
> If I log in as a manager and try to directly access
> ../myapp/secure/staff/staff.jsp I get a 403 Forbidden
>
> If log in as a manager and try to access the resource via an action
> that forwards to the resource on SUCCESS
> for example ../myapp/SomeAction.action is defined in staff.xml (which
> is included in struts.xml) thusly
>
> <action name="AddStaffAccount" class="foo.bar.baz.SomeAction"
> method="someMethod">
> <result name="success">/secure/staff/staff.jsp</result>
> ...
> </action>
>
> I get access to the protected resource even though I am logged in as
> an account that does not have that role.
>
> I'm relatively new to Struts having mostly developed in plain old J2EE
> jsp/servlets
>
> Somehow I need to be able to apply the security constraint when the
> action forwards to the resource on success.
> I really don't want to have to start testing roles in my actions as
> this seems to negate the benefits of using declarative security.
>
> I can't find anything about this in my book (Struts2 in Action).
>
> Any advice much appreciated
>
> Thanks
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org