Попытка использовать Grails Spring Security Plugin + Facebook Connect для автоматического создания пользователя с разрешениями по умолчанию для аутентификации - PullRequest
2 голосов
/ 31 июля 2010

Я работаю над приложением, которое использует плагин Spring (Acegi) для Grails.Плагин имеет встроенные настройки подключения к Facebook. Я следовал инструкциям по обработке входа в Facebook в приложении ... однако мои знания о том, что происходит, очень слабые, и я действительно хотел бы дать пользователю / посетителювозможность входа в систему и / или регистрации в моем приложении, используя свою учетную запись Facebook или создать учетную запись вручную.У меня есть роли, которые настроены в приложении в плагине Spring Security, которые обойдены с помощью опции подключения Facebook facebook.Где я могу перехватить действие входа в систему в плагине Spring Security, чтобы ввести свой собственный код для создания нового пользователя в приложении, если он / она не существует.

Я надеюсь, что если они решат создать учетную запись с помощью Facebook .. мое приложение создаст соответствующую учетную запись для пользователя Facebook с разрешениями по умолчанию.Когда человек входит в систему, устанавливаются разрешения, и для доступа к определенному контенту требуется аутентификация.

Я нашел способ справиться с этим с помощью плагина Shiro Security здесь:

http://sacharya.com/facebook-connect-with-jsecurity-on-grails/

Я также наткнулся на Nimble.Тем не менее, мне очень нравится Spring Security, это может быть удобство, и, может быть, пришло время попробовать Shiro с Nimble ... Я не знаю.

Надеюсь, это имеет смысл.Я ценю любое направление в этом деле.

Лучший Майк

1 Ответ

1 голос
/ 08 сентября 2010

Вы пытались использовать класс SecurityListener, реализующий ApplicationListener?

public void onApplicationEvent(ApplicationEvent event) 
{
    if (event instanceof AuthenticationSuccessEvent) 
    {
        ...
    }
}

См. Также: http://forum.springsource.org/showthread.php?t=66885

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