Чтобы роль пользователя не выполнялась.
- Пример 1: роль "администратор" это единственная роль, которую можно выполнять уничтожить действие.
- Пример 2: Любая роль, отличная от "гостя", может выполнять действие CREATE.
В реальном случае у меня есть это:
public String delete() {
if(FacesContext.getCurrentInstance().getExternalContext().isUserInRole("administrator"){
//.....the action to perform
}
return "Denied";
}
Я бы хотел использовать аннотацию @RolesAllowed()
EJB, но я не использую EJB, а ManagedBeans.
Поэтому возникает вопрос: есть ли способ использовать много ролей одновременно? Некоторое обходное решение!
Пример: если действие должно быть разрешено для 3 ролей (администратор, модератор, менеджер). Я обязан сделать:
if (FacesContext.getCurrentInstance().getExternalContext().isUserInRole("administrator")
|| FacesContext.getCurrentInstance().getExternalContext().isUserInRole("manager")
|| .....) {
//....
}
И это боль, чтобы воспроизвести все методы. Что-то вроде сотен методов: (