Проблема с хранением паролей к БД

ivan.melnik

Новичок
Проблема с хранением паролей к БД

Разрабатывается многопользовательское web-приложение. В рамках приложения пользователи делятся на группы с различными правами доступа к компонентам приложения.
Есть необходимость группы пользователей приложения отобразить на БД, тоесть на основании необходимых для группы функций на БД создавать группу в БД с правами только на необходимые элементы (таблицы, функции, представления и пр).
Тк администратор приложения может изменять права доступа групп, то есть необходимость также организовать параллельное изменения прав групп(ролей) БД.

предполагаемый алгоритм исполнения приложения относительно авторизации
1. старт приложения производится под пользователем с правами только на чтение полей логина и хеша пароля таблицы пользователей БД (никаких других прав у этого пользователя нет)
2. если авторизация успешна, то приложение получае логин и пароль соответствующей роли в БД и пересоединяется под ними
3. дальнейшее выполнение программы происходит под соответствующей ролью

Проблема с хранением паролей к БД - для пересоединения с базой пароли необхоимо хранить в открытом доступе. Собственно вопрос в том - как хранить пароль ролей к БД, чтобы при несанкционированном доступе (взлом ftp, sshили sql инъекция) злоумышленник не смог получить эти пароли, а приложение могло
 

fixxxer

К.О.
Партнер клуба
В постгресе есть множество методов аутентификации, использующих внешние сервисы - kerberos, pam. Смотри в эту сторону.
 

Фанат

oncle terrible
Команда форума
что имеется в виду под "стартом приложения"? старт сеанса работы с приложением или запуск определенного скрипта? и где хранится пароль между запусками?
 

ivan.melnik

Новичок
Проблема в том что между запросами нужно где-то хранить пароль в открытом виде, так как это пас от БД. Поступило предложение использовать comet server. Кто-то что-то может сказать на эту тему?
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Проблема с хранением паролей к БД
Проблема с хранением паролей к БД - для пересоединения с базой пароли необхоимо хранить в открытом доступе. Собственно вопрос в том - как хранить пароль ролей к БД, чтобы при несанкционированном доступе (взлом ftp, sshили sql инъекция) злоумышленник не смог получить эти пароли, а приложение могло
Тут наблюдаются взаимоисключающие параграфы, при несанкционированном доступе злоумышленник получит ровно то, что доступно приложению. Поэтому не надо хранить пароли в открытом виде.
 
Сверху