• postgreSQL 认证方式


    postgreSQL的认证配置文件

    pg_hba.conf

    配置文件pg_hba.conf的位置

    pg_hba.conf可以出现在许多其他地方,具体取决于Pg的安装方式。

    通常情况下路径为

    /etc/postgresql/[VERSION]/main/pg_hba.conf

    通过shell命令获得(此命令必须使用同具有超级用户权限的数据库用户名相同的操作系统用户名,例如postgres,sudo su postgres)

    psql -t -P format=unaligned -c 'show hba_file';

    通过posqgreSQL控制台命令show hba_file获得

    postgres=# show hba_file;
                  hba_file               
    -------------------------------------
     /etc/postgresql/12/main/pg_hba.conf
    (1 row)

    配置文件的内容范例

    # TYPE  DATABASE        USER            ADDRESS                 METHOD
    
    # "local" is for Unix domain socket connections only
    local   all             all                                     peer
    # IPv4 local connections:
    host    all             all             127.0.0.1/32            ident
    # IPv6 local connections:
    host    all             all             ::1/128                 ident
    # Allow replication connections from localhost, by a user with the
    # replication privilege.
    local   replication     all                                     peer
    host    replication     all             127.0.0.1/32            ident
    host    replication     all             ::1/128                 ident
    

    认证方式详解(METHOD)

    1.trust

    无条件地允许连接。这种方法允许任何可以与PostgreSQL数据库服务器连接的主机以任意PostgreSQL数据库用户身份登入,而不需要口令或者其他任何认证。

    当hba_file中的method为trust时,则hba_file中指定的IP主机可以以任何的数据库用户名登录而不需要密码

    2.reject

    无条件地拒绝连接。这有助于从一个组中"过滤出"特定主机,例如一个reject行可以阻塞一个特定的主机连接,而后面一行允许一个特定网络中的其余主机进行连接。

    3.md5

    要求客户端提供一个 MD5 加密的口令进行认证。

    4.password

    要求客户端提供一个未加密的口令进行认证。因为口令是以明文形式在网络上发送的,所以我们不应该在不可信的网络上使用这种方式

    5.ident

    通过联系客户端的 ident 服务器获取客户端的操作系统名,并且检查它是否匹配被请求的数据库用户名。Ident 认证只能在 TCIP/IP 连接上使用。当为本地连接指定这种认证方式时,将用 peer 认证来替代。

    远程操作系统的当前用户名和数据库的用户名一致时,可以直接使用此用户名登录而不需要密码)

    6.peer

    从操作系统获得客户端的操作系统用户,并且检查它是否匹配被请求的数据库用户名。这只对本地连接可用

    本地操作系统的当前用户名和数据库的用户名一致时,可以直接使用此用户名登录而不需要密码

    7. gss
    用 GSSAPI 认证用户。只对TCP/IP 连接可用。

    8.sspi
    用 SSPI 来认证用户。只在Windows 上可用。

    9.ldap
    使用LDAP服务器认证。

    10.radius
    用 RADIUS 服务器认证。

    11.cert
    使用 SSL 客户端证书认证。

    12.pam
    使用操作系统提供的可插入认证模块服务(PAM)认证。

    13.bsd
    使用由操作系统提供的 BSD 认证服务进行认证。

  • 相关阅读:
    GPS坐标转百度地图并且加载地图示例.支持微信端访问
    关于vs2013 mysql Ef框架中提示版本不兼容问题的解决办法
    CSS3 关于@font-face引用中文字体解决办法
    登录权限,菜单动态加载,动态渲染功能按钮
    vue-router使用next()跳转到指定路径时会无限循环
    三张图较为好理解JavaScript的原型对象与原型链
    深入javascript之原型和原型链
    vue2.0引入现有css文件
    定制简单的404和403页面
    弹框内画echarts图dom元素无法获取的问题
  • 原文地址:https://www.cnblogs.com/gaoBlog/p/13223621.html
Copyright © 2020-2023  润新知