управление доступом пользователей в веб-приложении j2ee - PullRequest
1 голос
/ 14 мая 2010

Я работаю с проектом jsp / servlet, и мне нужно завершить модуль управления доступом к моему jsps, так как у меня более одного пользователя с другим профилем.

Я определил таблицу в моей базе данных, которая возобновляет профиль и разрешенный URL-адрес, как это:

id_profil :1 
url : http://localhost/...xyz.jsp
id page 1

Теперь я пытаюсь изменить меню в соответствии с id_profil зарегистрированного пользователя.

Таким образом, в одном профиле разрешены страницы, но они должны быть скрыты для других. С тех пор я понятия не имею, как это реализовать.

Ответы [ 2 ]

2 голосов
/ 14 мая 2010

Имейте в виду, что, изменяя значения, отображаемые в меню, вы не мешаете пользователю получить прямой доступ к странице - даже если пользователь не может получить доступ к xyz.jsp, опустив элемент меню, все еще можете ввести xyz.jsp в адресную строку своего браузера. Поэтому вам придется заблокировать доступ другим способом.

Если у вас есть опыт работы с Spring или вы планируете его реализовать, взгляните на Spring Security . Его можно использовать для ограничения прав доступа пользователей к различным частям вашего приложения. Это не очень сложно реализовать, если вы уже знакомы с Spring.

ETA : Для некоторых основ, не связанных с Spring Security, проверьте безопасность в web.xml: http://java.sun.com/javaee/5/docs/tutorial/doc/bncbe.html#bncbj

2 голосов
/ 14 мая 2010

Это довольно смутное объяснение, но вы можете использовать if в вашем jsp, чтобы скрыть опции меню, основанные на id_profil , что-то вроде этого:

<c:if test="${currentUser.id_profil == 1}">
   <button label="Only id_profil 1"/>
</c:if>
...