Вопросы по дизайну безопасного входа в Grails вместе с выбором библиотеки и базы данных - PullRequest
0 голосов
/ 12 октября 2010

Планирую построить модуль администрирования пользователей с использованием Grails и подключаемого модуля Spring Security Core для Grails.

Кроме того, я рассматриваю возможность использования MongoDB для системы баз данных.

Вопрос (ы):

(1) Какие преимущества и выгоды получит мое приложение, выбрав MongoDB вместо MySQL или HSQLDB?

(2) Действительно ли очень просто реализовать (имеется в виду сторонние API Grails или плагины и / или Spring API?) Приложение, которое выполняет следующее:

  • Регистрация нового пользователя
  • CAPTCHAs
  • Подтверждение E-mail
  • Механизм сброса пароля забыт
  • Роли
  • SSL

(3) Кто-нибудь может указать на учебник, который затрагивает, как делать некоторые из этих вещей, используя Grails?

(4) Нужно ли будет использовать стандартную СУБД поверх системы NoSQL для модуля администрирования пользователей моего приложения?

Спасибо, что нашли время, чтобы прочитать это.

Ответы [ 2 ]

0 голосов
/ 12 октября 2010

Плагин Spring Security UI обрабатывает регистрацию нового пользователя, подтверждение по электронной почте и сброс забытого пароля.Плагин Spring Security Core, конечно же, обрабатывает роли и поддерживает указание, для каких URL-адресов требуется SSL (см. Документацию по поддержке канала, раздел «17 Защита канала»).

Вы можете настроить рабочий процесс регистрации, включив в негоcaptcha - я бы порекомендовал использовать плагин reCAPTCHA: http://grails.org/plugin/recaptcha

Также есть плагин MongoDB: http://www.grails.org/plugin/gorm-mongodb

Вся сохраняемость, используемая плагинами Core и UI, является перезаписываемой, нопо умолчанию использует GORM и предполагает, что вы используете RDBMS.Но подключить свой собственный просто, если вы используете MongoDB или какой-либо другой механизм - например, посмотрите документы по созданию пользовательского UserDetailsService (раздел «11 Custom UserDetailsService» в http://burtbeckwith.github.com/grails-spring-security-core/docs/manual/)

0 голосов
/ 12 октября 2010
  1. Не эксперт NoSql, но NoSql Storage более эффективен при прямом чтении (метод get для классов домена grails) и медленнее при сложных запросах на соединение, либо не поддерживает агрегацию (макс., Мин., Avrg)
  2. Плагин Grails Security UI имеет все это
  3. http://burtbeckwith.github.com/grails-spring-security-ui/docs/manual/index.html
  4. Плагин Grails MongoDB реализует функциональность GORM для MongoDB, поэтому все должно быть в порядке (не проверено напрямую)
...