我有以下代码连接到我的远程服务器上的数据库(连接脚本驻留在同一台服务器上):
Database::$ErrorHandle = new PDO('pgsql:host=111.222.33.44;dbname=mydatabase;', 'postgres', 'mypassword', $db_settings);
Run Code Online (Sandbox Code Playgroud)
问题是我可以将密码更改为任何内容,并且仍然建立连接!真是太认真了!!
我的数据库是否可以通过在不同服务器上运行的PHP脚本连接到(提供您知道IP和数据库名称)?
我如何强制执行密码,我已经查看了以下堆栈溢出页面并做了他们所说的但仍然没有运气: 如何更改PostgreSQL用户密码?
我正在使用PHP 5.5和Apache2运行Ubuntu 12.04服务器
当然,您的postgresql数据库可以正确配置为仅与特定用户(Postgres中的角色)从某些IP /套接字连接经过身份验证的用户.
一些考虑:
你看到数据吗?或者你可以连接到服务器?你能列出数据库吗?
查看您的pg_hba.conf并为每个源的每个数据库的每个角色设置适当的权限
您是否授予mydatabase每个人访问权限?您授予哪些角色访问权限?
数据库是否在公共方案中有其表?并获准进入公众?
是的,使用此配置,知道您的IP和数据库名称的每个人都可以连接到您的数据库.
| 归档时间: |
|
| 查看次数: |
2078 次 |
| 最近记录: |