Как Grails управляет безопасностью, и почему я должен использовать плагин? - PullRequest
0 голосов
/ 10 октября 2011

В 90% каждого учебника Grails, связанного с безопасностью, они советуют хранить ваши объекты User в переменной области сеанса.Это все красиво и просто, но мне интересно, слишком ли это хорошо, чтобы быть правдой, особенно с такими плагинами, как Spring Security , которые предлагают во много раз больше возможностей.

Для простых:Пользователь и, следовательно, я имею право просматривать / редактировать свои собственные доменные объекты "приложения, которые я разрабатываю, я храню свои объекты пользователя в сеансе.Однако это заставило меня задуматься о том, как Grails поддерживает безопасность и сеансы J2EE в своей собственной реализации (он использует временный идентификатор сеанса в файле cookie, верно?).Кроме того, насколько он уязвим для таких атак, как внедрение файлов cookie и межсайтовый / случайный JS?

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

Если, если кто-нибудьможет указать мне на хорошую реализацию входа в систему OpenID / Facebook, это было бы потрясающе.

Ответы [ 2 ]

3 голосов
/ 11 октября 2011

Что касается проблем безопасности, я бы всегда предлагал отдавать предпочтение проверенным и широко принятым решениям по сравнению с вашей собственной свернутой реализацией безопасности.Spring Security была основана в 2003 году под названием Acegi и приносит вам более восьми лет опыта и разработки для ваших проблем безопасности.

Как вы уже указали на плагин Grails Spring Security , вам следуетвзгляните на плагин OpenID Spring Security OpenID , который расширяет Spring Security Core и предоставляет вам поддержку OpenID.

2 голосов
/ 11 октября 2011

почему я должен использовать плагин безопасности даже для этих тривиальных задач?

... на базовом уровне использовать плагин также тривиально, что тут терять? Скринкаст для начала

...