我不知道我是否有這個策略的一個好主意工作。在我的應用程序中,我有2個分離的登錄表單,一個用於普通用戶,另一個用於管理員(不問爲什麼,多數民衆贊成在它的方式:))檢票和CompoundAuthorizationStrategy
我試圖達到什麼是適當的重定向。在我的WebApplication I類有:
init() {
//...ommited some not related code
CompoundAuthorizationStrategy compoundAuthorizationStrategy = new CompoundAuthorizationStrategy();
IAuthorizationStrategy membertPageAuthStrategy = new SimplePageAuthorizationStrategy(MemberTemplatePage.class,
HomePage.class)
{
@Override
protected boolean isAuthorized()
{
//here's my way to define if authorization is completed
}
};
IAuthorizationStrategy adminPageAuthStrategy = new SimplePageAuthorizationStrategy(AdminTemplatePage.class,
AdminLoginPage.class)
{
@Override
protected boolean isAuthorized()
{
//here's my way to define if authorization is completed
}
};
compoundAuthorizationStrategy.add(membertPageAuthStrategy);
compoundAuthorizationStrategy.add(adminPageAuthStrategy);
getSecuritySettings().setAuthorizationStrategy(compoundAuthorizationStrategy);
//...
}
MemberTemplatePage是模板登錄的用戶頁面,而AdminTemplatePage是管理員一樣。 現在我通過這種鏈式驗證策略,當我輸入MemberTemplatePage未授權的時候,我會被重定向到HomePage,當我輸入未經授權的AdminTemplatePage時,我會重定向到AdminLoginPage,但我會保持重定向到AdminTemplatePage。 不能谷歌CompoundAuthorizationStrategy上的任何東西,它似乎是我的最佳選擇。任何想法我做錯了什麼? 我瞭解RoleAuth〜但那不適合我。