Session could provide that too? Cool:)
Maurice Marrink wrote:
Or Session. Session.getAuthorizationStrategy().
Maurice
On Tue, Apr 1, 2008 at 8:51 PM, Nino Saturnino Martinez Vazquez Wael
<[EMAIL PROTECTED]> wrote:
It's your webapplication that takes the ISecurityStrategy..
public class ZeuzGroupApplication extends WebApplication {
private SpringComponentInjector springComponentInjector;
@Override
protected void init() {
super.init();
// getSecuritySettings().setAuthorizationStrategy(
// new RoleAuthorizationStrategy(new UserRolesAuthorizer()));
getSecuritySettings().setAuthorizationStrategy(
new ZeuzSecurity(ZeuzAuthorizedPage.class,
LoginPage.class) {
@Override
protected boolean isAuthorized(Class pageClass) {
return (((ZeuzSession)
Session.get()).isAuthorized());
}
});
...
Bruce Petro wrote:
> Thanks to the replies I received... yeah I didn't say it well, but I
> assumed the user would be kept in the session and that seems to fit
> everyone's reply. On top of that, I think I'm hearing I can use
> inheritance and have every page utilize ISecurityStrategy to then
> control access to the page.
>
> I'll check into it and see if I've got that all correct. Thanks again.
>
>
> -----Original Message-----
> From: Nino Saturnino Martinez Vazquez Wael
> [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, April 01, 2008 1:49 PM
> To: users@wicket.apache.org
> Subject: Re: Question on page inheritance...
>
> True, as Igor wrote this is meant to be in conjuction with at
> ISecurityStrategy.
>
> Nino Saturnino Martinez Vazquez Wael wrote:
>
>> You could actually also do this another way... Im using markup
>> inheritance alot, but I stuff user object into the session like this:
>>
>> See a nice view here:
>> http://papernapkin.org/pastebin/view/281/
>>
>> package zeuzgroup.application;
>>
>> import javax.servlet.http.HttpSession;
>>
>> import org.apache.wicket.Application;
>> import org.apache.wicket.Request;
>> import org.apache.wicket.protocol.http.WebRequest;
>> import org.apache.wicket.protocol.http.WebSession;
>>
>> import zeuzgroup.core.Person;
>> import zeuzgroup.core.user.UserType;
>>
>> public class ZeuzSession extends WebSession {
>>
>> private boolean authorized = false;
>>
>> private Person person;
>>
>> private HttpSession httpSession;
>>
>> protected ZeuzSession(Application application, Request request) {
>> super(application, request);
>> httpSession = ((WebRequest) request).getHttpServletRequest()
>> .getSession();
>>
>> }
>>
>> public boolean isAuthorized() {
>> return authorized;
>> }
>>
>> public void setAuthorized(boolean authorized) {
>>
>> this.authorized = authorized;
>> if (authorized) {
>>
>> httpSession.setAttribute("sso.password.attribute", person
>> .getPassword());
>> httpSession.setAttribute("sso.email.attribute",
>> person.getEmail());
>> httpSession.setAttribute("password", person.getPassword());
>> httpSession.setAttribute("email", person.getEmail());
>>
>> } else {
>> httpSession.setAttribute("sso.password.attribute", null);
>> httpSession.setAttribute("sso.email.attribute", null);
>> }
>> }
>>
>> public Person getPerson() {
>> if (person != null) {
>> return person;
>> } else {
>> Person person = new Person();
>> person.setUserType(UserType.Guest);
>> return person;
>> }
>> }
>>
>> public void setPerson(Person person) {
>> this.person = person;
>> }
>>
>> }
>>
>>
>> Bruce Petro wrote:
>>
>>> I'm just getting started in wicket, so forgive me if this is a
>>>
> too-dumb
>
>>> question...
>>>
>>>
>>>
>>> I know wicket can check the session for a user to ask a "user" object
>>>
> if
>
>>> it is logged in.
>>>
>>> However, you don't really want to paste code on every page.
>>>
>>> What is the best way, to have each page inherit the base "security
>>> check" routine?
>>>
>>>
>>>
>>> Would you create a BasePage extends WebPage and put the logic there
>>>
> and
>
>>> have all other pages extend BasePage?
>>>
>>> Or would you attach some sort of a command object to each page and
>>>
> put
>
>>> the logic in that?
>>>
>>>
>>>
>>> Anyone have a reference to an example of code to do this?
>>>
>>>
>>>
>>> THANKS!
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>
>
--
-Wicket for love
Nino Martinez Wael
Java Specialist @ Jayway DK
http://www.jayway.dk
+45 2936 7684
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
-Wicket for love
Nino Martinez Wael
Java Specialist @ Jayway DK
http://www.jayway.dk
+45 2936 7684
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]