Безопасно ли обрабатывать сеанс с помощью тегов Struts2

#jsp #struts2 #ognl

#jsp #struts2 #ognl

Вопрос:

Я использую некоторые теги Struts2 и OGNL для проверки того, что будет отображаться в <div> теге

 <s:if test="%{#session.User.getProfile()=='Admin'}">
    //SHOW SOMETHING RELATED WITH ADMINS
</s:if>
<s:else>
       //SOMETHING RELATED WITH NORMAL USERS                
</s:else>
  

Это слишком просто, и я не знаю, безопасно ли это или, может быть, мне следует использовать лучшую технику для достижения того, что я пытаюсь сделать

Комментарии:

1. создавайте отдельные страницы для администратора и других пользователей…

2. Знаете, не все должно быть сложно. 🙂 Что вы подразумеваете под безопасностью?

3. @AleksandrM Ахах правда, парадигма поцелуя FTW 🙂

4. Если вы не сделаете что-то не так, пользователь не сможет изменить свой собственный сеанс. Вы также можете использовать что-то вроде Spring Security, в котором есть множество способов реализовать это.

Ответ №1:

Карта сеанса, которую вы использовали в контексте, защищена фреймворком, если к ней обращаются со стороны клиента. На стороне сервера он используется обычным способом OGNL. Итак, вам не нужно беспокоиться об этом, но для защиты от других возможных уязвимостей вам лучше использовать любую из security framework или servlet security. Struts2 предоставляет PrincipalAware действия безопасности, которые вы можете использовать вместо того, чтобы рассматривать объект модели как безопасность.