PostgreSQL dblink_connect_u

2021-09-16 15:38 更新

dblink_connect_u — 不安全地打開一個到遠程數(shù)據(jù)庫的持久連接

大綱

dblink_connect_u(text connstr) 返回 text
dblink_connect_u(text connname, text connstr) 返回 text

描述

dblink_connect_u()dblink_connect()一樣,不過它將允許非超級用戶使用任意認證方式來連接。

如果遠程服務(wù)器選擇了一種不涉及口令的認證方式,那么可能發(fā)生模仿以及后續(xù)的擴大權(quán)限,因為該會話看起來像由運行PostgreSQL的用戶發(fā)起的。此外,即使遠程服務(wù)器不要求一個口令,也可能從服務(wù)器環(huán)境提供該口令,例如一個屬于服務(wù)器用戶的~/.pgpass文件。這帶來的不只是模仿的風(fēng)險,而且還有將口令暴露給不可信的遠程服務(wù)器的風(fēng)險。因此,dblink_connect_u()最初是用所有從 PUBLIC撤銷的特權(quán)安裝的,這讓它只能被超級用戶調(diào)用。在某些情況中,為dblink_connect_u()授予EXECUTE權(quán)限給可信的指定用戶是合適的,但是必須小心。我們也推薦任何屬于服務(wù)器用戶的~/.pgpass文件不能包含任何指定了一個通配符主機名的記錄。

詳見dblink_connect()

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號