Плагин Grails Spring Security LDAP: используйте LDAP для аутентификации, но разрешайте входить только пользователям, хранящимся в базе данных. - PullRequest
1 голос
/ 31 марта 2011

У меня есть таблица имен пользователей, которые сопоставляются с именами пользователей LDAP. То, что я хочу сделать, - это иметь список пользователей или просто имена пользователей в базе данных и разрешать только аутентификацию пользователей в списке на сервере LDAP. Я хочу иметь возможность проходить аутентификацию на сервере LDAP, но разрешить только те имена пользователей, которые находятся в базе данных и имеют возможность входить в систему. Мне удалось успешно настроить Spring Security Core и LDAP, чтобы пользователи могли войти в систему. Как аутентифицировать только пользователей, которые включены в базу данных, для входа в приложение grails с использованием Spring Security?

1 Ответ

2 голосов
/ 01 апреля 2011

Вам необходимо создать подкласс Spring Security LdapAuthenticationProvider . Переопределите метод authenticate, который возвращает null, если запрошенный логин недействителен для ldap auth (иначе в вашей таблице).

Следующим шагом является добавление вашего нового пользовательского класса AuthenticationProvider в список провайдеров, как описано в Документация по плагину Spring Security Core .

...