В нашем проекте у нас есть страницы JSF2, используемые во внутренней сети компании. Но мы собираемся открыть эти страницы в Интернете. Таким образом, страницы будут доступны всем. Но некоторые поля не будут отображаться, если пользователь приходит из Интернета.Авторизация в компонентах JSF2
Я знаю, что можно написать рендер-атрибут для каждого компонента, такого как «userIsInRole». Но дополнительный «визуализированный» контроль не кажется эффективным и изящным методом. Поэтому я планирую отметить компоненты, которые собираются быть оказаны в Интернете, используя пользовательский атрибут, как показано ниже:
<h:inputText context="internet" />
...
В визуализатора от inputText или компонентного кода:
if(user is from Internet && context = "internet") {
return true; // or render... whatever
}
Если компонент не помечен как Интернет, то это означает, что он будет доступен (вынесен) только изнутри компании.
Возможно ли реализовать авторизацию с использованием компонентов JSF2 в соответствии с заданным атрибутом? Есть ли лучшие варианты? Или я должен создавать отдельные страницы для пользователей Интернета?
Мы используем: PrimeFaces + Spring в нашем проекте.
Спасибо