Может ли Spring Security проверять отношения между пользователями? - PullRequest
0 голосов
/ 27 сентября 2011

Я новичок в Spring Security. Может ли Spring Security проверять отношения между пользователями?

например:

У меня есть два типа пользователей. один учитель, другой студент. Я хочу проверить, есть ли у этого ученика отношения со специальным учителем. Затем ученик может сделать какую-то операцию с этим специальным учителем.
Может ли весенняя безопасность достичь этой цели?

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

Thx

Ответы [ 2 ]

1 голос
/ 29 сентября 2011

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

Если я хорошо понимаю вашу проблему, возможно, вам может понадобиться прочитать и понять класс AccessDecisionManager из Spring Security.

1 голос
/ 27 сентября 2011

По сути, это не похоже на проблему Spring Security - это связано с данными. Если это отношение хранится в вашей БД, и вы используете ORM, тогда между учителем и учеником должно быть отношение OneToManyManyToOne наоборот).

Если вы хотите отслеживать некоторую дополнительную информацию о вошедшем в систему пользователе (скажем, его основной учитель) в контексте Spring Security, то вам нужно реализовать UserDetailsService и расширить объект Spring Security User с помощью дополнительные данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...