Автор Тема: Безопасность хранения паролей  (Прочитано 17765 раз)

platonische

  • Гость
Безопасность хранения паролей
« : Ноября 01, 2016, 13:01:43 »
Хочу поднять вопрос о том, как правильно раздать права пользователю базы, под логином которого будет осуществляться операция взаимодействия скрипта сайта и базы данных.

Необходимо минимизировать права, т.к. логин и пароли хранятся в открытом виде на сайте (файл или база).

По большому счету необходимы два запроса к базе.
  • Получение инфы по Лиц.счету (часть персональных данных и состояние счета)  методом select из таблиц CUSTOMER, HOUSE, STREET
  • Пополнение лиц.счета посредством хранимой процедуры ADD_PAYMENT_FROM_EXT_SYSTEMS

Шумко Дмитрий

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 753
Re: Безопасность хранения паролей
« Ответ #1 : Ноября 01, 2016, 13:49:15 »
В ПО нет возможности тонкой настройки прав.
Вы можете воспользоваться сторонними средствами, например IBexpert
или через isql

GRANT SELECT, REFERENCES ON CUSTOMER TO PAYUSER;
GRANT SELECT, REFERENCES ON HOUSE TO PAYUSER;
GRANT SELECT, REFERENCES ON STREET TO PAYUSER;
GRANT EXECUTE ON PROCEDURE ADD_PAYMENT_FROM_EXT_SYSTEMS TO PAYUSER;

platonische

  • Гость
Re: Безопасность хранения паролей
« Ответ #2 : Ноября 07, 2016, 19:02:03 »
С такими правами чтение производит а запись через процедуру не происходит
Похоже надо еще открывать на запись в таблицы PAYMENT и PAY_DOC

platonische

  • Гость
Re: Безопасность хранения паролей
« Ответ #3 : Ноября 07, 2016, 19:08:15 »
Интересно... но и права на таблицы PAYMENT и PAY_DOC не дали результата

Шумко Дмитрий

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 753
Re: Безопасность хранения паролей
« Ответ #4 : Ноября 07, 2016, 22:34:07 »
Проверьте с этими правами
GRANT SELECT, REFERENCES ON CUSTOMER TO PAYUSER;
GRANT SELECT, REFERENCES ON HOUSE TO PAYUSER;
GRANT SELECT, REFERENCES ON STREET TO PAYUSER;
GRANT SELECT ON PAYMENT_DELETED TO PAYUSER; -- этой таблицы может не быть
GRANT SELECT, INSERT ON PAYMENT TO PAYUSER;
GRANT SELECT, INSERT ON PAY_DOC TO PAYUSER;
GRANT EXECUTE ON PROCEDURE ADD_PAYMENT_FROM_EXT_SYSTEMS TO PAYUSER;
GRANT EXECUTE ON PROCEDURE PAYMENT_ADD_FROM_EXT_SYSTEMS TO PAYUSER;
GRANT EXECUTE ON PROCEDURE PAYMENT_EXT_STATE TO PAYUSER;

platonische

  • Гость
Re: Безопасность хранения паролей
« Ответ #5 : Ноября 07, 2016, 22:35:32 »
Читаю информацию, пишут что надо дать права процедуре на все что выполняет процедура
Дал права SELECT, INSERT на таблице PAYMENT и PAY_DOC не помогает.
Скажи что еще делает процедура?

Я смотрел тело процедуры вопросы вызвала только строка:
...
PAY_DOC_ID = GEN_ID(gen_operations_uid,1);
...

Ваше предложение сейчас проверю

Вот это к чему относится? остальное как я смотрю работает с таблицами CUSTOMER, PAYMENT, PAY_DOC

platonische

  • Гость
Re: Безопасность хранения паролей
« Ответ #6 : Ноября 07, 2016, 22:41:28 »
Нет ваши права не помогли

Шумко Дмитрий

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 753
Re: Безопасность хранения паролей
« Ответ #7 : Ноября 08, 2016, 01:40:15 »
GEN_ID это получение уникального ключа.

смотрите на что ругается скрипт, он должен выдать на какие объекты не хватает прав.

platonische

  • Гость
Re: Безопасность хранения паролей
« Ответ #8 : Ноября 08, 2016, 09:29:32 »
А не подскажешь в php interbase есть возможность вывода подобной информации?

Шумко Дмитрий

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 753
Re: Безопасность хранения паролей
« Ответ #9 : Ноября 08, 2016, 13:52:18 »
да. удали перед вызовом функций @ . @  - подавляет вывод ошибок

platonische

  • Гость
Re: Безопасность хранения паролей
« Ответ #10 : Ноября 09, 2016, 12:28:37 »
Функции без @. Но я так и не понял как получить инфу об ошибке.

Шумко Дмитрий

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 753
Re: Безопасность хранения паролей
« Ответ #11 : Ноября 09, 2016, 14:04:55 »
Вывод ошибок в PHP включен?

platonische

  • Гость
Re: Безопасность хранения паролей
« Ответ #12 : Ноября 11, 2016, 15:05:25 »
Нет... Включу и отпишусь что там.