jaas, аутентифицируйте пользователей приложения на таблице базы данных - PullRequest
2 голосов
/ 09 июня 2011

Я хочу знать самый простой способ аутентификации пользователя приложения в таблице базы данных с использованием jaas .
Поскольку таблица базы данных с именем пользователя / хэшированным паролем, вероятно, является наиболее распространенным решением, существует ли «предоставленный» LoginModule для этого вида аутентификации?

1 Ответ

3 голосов
/ 09 июня 2011

Поддержка JDBCRealm в Tomcat 6 поставляется из коробки. Это, вероятно, достаточно для большинства потребностей. Обратите внимание, что Tomcat также предоставляет DataSourceRealm , чтобы разрешить аутентификацию через источник данных JDBC на основе JNDI; это лучше подходит для приложений, которым требуется выделенный пул соединений для доступа к источнику данных аутентификации. Обратите внимание, что реализации области поддерживают использование переваренных / хешированных паролей ; но не по умолчанию. Это потребует дополнительной настройки через атрибут digest каждой области.

Glassfish также поддерживает аутентификацию принципалов с использованием области JDBC. Подробности создания области можно найти в Руководстве администратора Glassfish . В руководстве может содержаться жалкая документация о допустимых значениях для управления областью - вы найдете их в посте блога .

Если вы ищете способы управления основными пользователями в сферах, то большинство / все контейнеры не поставляются с инструментами управления для одного и того же. Вы должны написать эти инструменты самостоятельно.

Кроме того, если вы хотите поддерживать алгоритмы дайджеста, не поддерживаемые этими реализациями Realm, или если реализации работают по-другому (например, добавление соли к паролю или блокировка пользователей на основе политики), тогда вы ' Вам нужно будет развернуть ваши собственные реализации.

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

...