Я новичок в использовании postgresql вместе с php, но что-то здесь не так. 9 из 10 примеров, которые я видел, устанавливают password
параметр в виде обычного текста.
Например, вот один образец
$con = pg_connect("host='localhost' dbname='testdb' user='postgres' password='password');
Это обычная практика? Представляет ли это угрозу безопасности? Если да, то есть ли лучший способ пройти password
стоимость?
Это обычная практика. Убедитесь, что сервер безопасен, и вы также можете разрешить postgres прослушивать SSL, чтобы пароль при передаче был зашифрован. Вы также можете хешировать пароль и отправить его в postgres. См. Ссылку ниже о методах аутентификации.
См. Это для получения дополнительной информации - https://stackoverflow.com/questions/97984/how-to-secure-database-passwords-in-php
Если вас очень беспокоит безопасность, postgres позволяет повысить безопасность несколькими способами. Посмотреть здесь -- http://www.postgresql.org/docs/9.1/static/auth-methods.html
Если вы не использовали пароль в виде обычного текста, потому что в этом случае нет проблем, любой токен, который вы использовали, также может быть паролем с точки зрения злоумышленника (даже если это хэш, это все, что вам нужно для аутентификации). Если вас беспокоит безопасность, инкапсулируйте соединение с базой данных в SSL.