Может ли весенняя безопасность удовлетворить эти потребности? - PullRequest
3 голосов
/ 23 марта 2011

Я немного прочитал на сайте информацию о том, что предлагает весенняя безопасность ..

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

В настоящее время я занимаюсь разработкой с использованием jsf2 + primefaces, spring3, jpa2 + hibernate

У меня есть эти потребности:

  1. есть список пользователей и групп пользователей
  2. необходимо аутентифицировать пользователя при входе в систему (это так просто, оно должно уже поддерживаться)
  3. система безопасности может быть настроена для модулей (пакетов проекта java или может рассматриваться как меню / программы в пользовательском интерфейсе), поэтому, если пользователь настроен для доступа ко всем программам в меню 1 и меню 3 и только 1 программа в меню 4, тогда меню будет отображаться только для разрешенных, а доступ непосредственно по незапрещенному URL-адресу меню / программы вызовет ошибку.
  4. необходимо аутентифицировать пользователя в сервисных методах (простых java-методах) на таких уровнях, как readonly level, r / w level. Так, например, если мы можем настроить этот публичный доступ к void save (...), чтобы иметь доступ с правами доступа, только пользователи, которым предоставлен доступ с правами доступа, могут вызывать этот метод
  5. может даже расширить это в JSF 2 xhtml, где я могу использовать доступ r или r / w для включения / выключения кнопок, ссылок или других материалов, возможно, программно, используя атрибут disabled компонента jsf.
  6. было бы лучше, если бы некоторые из этих функций, таких как аутентификация программы или методы обслуживания, выполнялись прозрачно с использованием AOP, не портя коды бизнес-процессов.

Пожалуйста, поделитесь своим мнением по этому вопросу.

Спасибо!

1 Ответ

1 голос
/ 23 марта 2011

Spring Security будет поддерживать большинство ваших требований.

  1. Вы можете использовать роли для этого.Например: USER, ADMIN, CONTRIBUTOR и т. Д. См. http://static.springsource.org/spring-security/site/docs/3.0.x/reference/technical-overview.html
  2. Что вы можете сделать с элементом form-login, вложенным в элемент http в вашей конфигурации безопасности.См. http://static.springsource.org/spring-security/site/docs/3.0.x/reference/ns-config.html#ns-getting-started
  3. . На стороне просмотра вы можете контролировать, кто видит, что с помощью taglibs в вас используют JSP.См. http://static.springsource.org/spring-security/site/docs/3.0.x/reference/taglibs.html Затем на стороне сервера вы убедитесь, что тот, кто сделал определенный звонок, имел право сделать это.Вы можете контролировать на уровне URL и на уровне метода.Например, для URL у вас есть элемент intercept-url, вложенный в http.Вы можете защитить метод с помощью аннотации @Secured
  4. Не уверен, что вы подразумеваете под чтением / записью для конкретного метода, но, как упоминалось в # 3, вы можете использовать аннотацию для защиты метода
  5. Не уверен, что JSF позволяет вам делать, но если вы используете JSP, вы можете использовать ярлыки тегов, как указано выше
  6. Вы должны быть в состоянии сделать это, но я не могу предоставить вамЛюбые примеры, хотя.Я бы тоже хотел почитать об этом у других.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...