Как управлять правами в Java EE

Я должен реализовать веб-приложение с Java EE, которое имеет разных типов пользователей с разными правами на доступные функции, данные и файлы.

Я никогда не делал этого раньше, и я ожидал, что для этого будет существовать стандарт Java EE, но я пока не нашел ничего полезного.

Какова наилучшая практика для реализации веб-приложения Java EE с различными правами доступа, и особенно, как я могу управлять / осуществлять выборочную загрузку файлов на основе прав в моем веб-приложении?

2 ответа

Решение

Стандартный способ сделать это - использовать Realms ( http://docs.oracle.com/javaee/6/tutorial/doc/bnbxj.html).

Это обеспечит вас как механизмами аутентификации, так и механизмами авторизации, с хорошими аннотациями для простого украшения ваших классов обслуживания.

Другим первоклассным претендентом является Spring Security ( http://projects.spring.io/spring-security/). Я не рекомендовал бы, если вы планируете перейти на простой Java EE, хотя.

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

При попытке получить доступ к странице или функции, пользовательский доступ, указанный в базе данных, проверяется, и пользователю либо запрещается, либо предоставляется доступ.

Другие вопросы по тегам