2012-03-05 4 views
0

с весной безопасности я защищаю контроллеры в grails по аннотации.Весна безопасности манипулировать переменной сеанса

У меня есть проекты, связанные с пользователями в моем Моделле

Вопрос: если кто-то пытается манипулировать т.е. ProjectID (хранятся в сессии вара) возможно он может просматривать проекты, которые не связаны с вошедшим пользователем?

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

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

Я знаю, что сеанс ВДП, но на стороне сервера им не уверен, если его сохранить для работы с пользователем ...

Mybe я не должен заботиться об этом мысли ...

ответ

0

Я не совсем уверен, каков ваш фактический вопрос, так как ваш пост трудно выполнить, но если вам нужен контроль уровня на уровне экземпляра, вы должны использовать списки контроля доступа fea что обеспечивает Spring Security. Это накладные расходы TON, особенно, поскольку количество экземпляров, которые необходимо обеспечить, растет, но это не позволит людям увидеть неправильные вещи.

При этом, если есть другие способы ограничить доступ к объектам, таким как простое правило SpEL, вы часто обнаружите, что у вас есть более чистая и простая структура безопасности.

Смежные вопросы