PostgreSQL 9.4.4 中文手册
上一页 | 上一级 |  | 下一页

# dblink_connect_u

## 名称

dblink_connect_u -- 危险的打开一个到远程数据库的持久连接

## 大纲

    dblink_connect_u(text connstr) returns text
    dblink_connect_u(text connname, text connstr) returns text

## 描述

`dblink_connect_u()`与`dblink_connect()`是相同的， 除了它将允许非超级用户使用任何身份验证方法进行连接。

如果远程服务器选择一个不涉及密码的身份验证方法，然后模拟并且产生权限的随后升级， 因为该会话将出现于用户，正如本地PostgreSQL服务器运行的那个。 同时，即使远程服务器确实需要密码，从服务器环境提供密码是可能的，比如 `~/.pgpass`文件从属于服务器的用户。这不仅仅打开模拟风险，而且 可能将密码暴露给不信任的远程服务器。 因此，`dblink_connect_u()`初始安装从`PUBLIC`撤销的所有权限。 使得它不可请求即付只有超级用户可以。 在一些情况下可以为`dblink_connect_u()`指定可以信赖的用户适当授予 `EXECUTE`权限，但这应该仔细的做。 推荐任何从属于服务器的用户的`~/.pgpass`文件不包含 指定通配符主机名的任何记录。

更多详情请参阅`dblink_connect()`。

上一页 | 起始页 | 下一页
dblink_connect | 上一级 | dblink_disconnect