Господа - у меня дилема. И так начнем Вариант 1 - Классический Для доступа к базе данных логин пароль от нее хранится в неком конфиге и тд и тп. Но хочется чтобы можно было управлять доступом на уровне таблиц ( столбцов) и тп. Поэтому пошел вариант 2 храним ( например в сессии) логин и пароль с которым вошел пользователь - и каждый раз используем его. Однако при таком раскладе - в сессии хранится серилизованный php ( проверялось) логин и пароль который при легкой манипуляции достается. а это уже проблема безопасности - ибо администратор или кто получил доступ к серверу видит этот пароль. можно конечно его зашифровать - где то даже находил с ключем и дешифровкой .. но опять же кто получил доступ легко дешифрует ( ключ то тоже виден), увидит пароли залогиненых пользователей. еще читал что хранить сессии можно в базе - даже протестировал - здорово работает - но тут опять приходится хранить пароль от базы данных в конфиге. Почему это проблема: Контора большая , иногда администраторов назначают с других так скажем филиалов, и мне например совсем не хочется чтобы хоть ктото знал мой пароль ( вдруг он захочет меня подставить ... фантазии на эту тему много) и другие ему тоже не к чему. А как это сделано у вас - и возможно есть какой то 3 вариант.
mysql должен работать не из под linux root, соединение то же не через mysql root, логирование входов в linux и выдача прав каждому сисадмину его личной учётки linux,
эм.. забыл написать что у меня postgresql - ну да не суть 2. это как бы утверждает о том что он запушен от имени постгришки ps axu | grep postg postgres 633 0.0 0.6 228808 12620 ? Ss окт30 0:00 postgres: postgres postgres 172.16.1.141(2244) idle 3. Я имел ввиду про подключение из php в базу данных а не о консольных входах.
а что сисадмин там делает? может все изменения слать в git, а вы бы модерировали и если всё в порядке, то применяли изменения на сервере
делает где? - php файлы в открытом виде лежат на файловой системе веб сервера - прочитать их вообще не составляет труда - а так как у сисадмина полный доступ к файловой системе .. то и прочитать файлы с сессиями или пароль из конфига ему не проблема.. если бы была возможность закрыть ( про платные решения zend и тп знаю) тогда да..
Это до тех пор пока не осознаешь что политика начальства такая - цитирую с его слов "двух сотрудниц отдела скоро отправим на почетную пенсию" - а что мешает этому же начальнику сделать такой финт ушами ( он немного шарит в программировании и администировании )- изучить что и как устроено , потом либо подставить и выпиннуть по статье ( связей хватает с итешниками - что там на советовать могут .. ) либо еше хз что PS потихоньку ищу место новое.
админ с правами root в системе полюбому сумеет получить доступ к базе. если не напрямую через прочитанный пароль, то выполнив процедуру сброса пароля так что выдохните и ставьте реальные цели. для хранения параметров соединения скрипта с базой подойдёт файл конфигурации. чтобы не светить учётку в version control, добавьте имя конфига в .gitignore. пусть этот файл НЕ версионируется, а существует только на сервере.