2010-01-29 3 views
1

Я собираюсь добавить безопасности к моему Grails App, и я хотел бы знать, из вашего опыта, что это лучший подход:Grails рекомендаций пользователя Acegi плагин

  1. Для добавления полей в классе Person домена (такие как телефон, адрес и т.д.)
  2. чтобы создать независимый класс домена и сопоставить его один к одному к Person класса

ответ

0

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

0

Я предлагаю вам использовать http://grails.org/plugin/acegi плагин и добавить свойства к классу пользователя, если они напрямую связаны с понятием учетной записи и где она имеет смысл загружать их каждый раз, когда вы обращаетесь к пользователю.

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

Я бы не добавил номер телефона или адрес к объекту пользователя, но я мог бы добавить адрес электронной почты (возможно, вам придется искать пользователей по электронной почте в какой-то момент) или ссылку на изображение профиля (как вы могли бы показывать это по всему сайту и не хотите его загружать).

Мне нравится держать объект пользователя небольшим и избегать соблазна добавлять аксессоров для каждой таблицы, содержащей идентификатор пользователя.

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