• 修改postgresql密码


    参看来源:https://www.iteye.com/blog/hellolove-2352778

    PostgreSQL  配置文件之pg_hba.conf

    该文件用于控制访问安全性,管理客户端对于PostgreSQL服务器的访问权限,内容包括:允许哪些用户连接到哪个数据库,允许哪些IP或者哪个网段的IP连接到本服务器,以及指定连接时使用的身份验证模式。



    TYPE 定义了多种连接PostgreSQL的方式,一般分为:

    loca

    使用本地unix套接字

    host

    使用TCP/IP连接(包括SSL和非SSL),host结合IPv4地址/结合IPv6地址

    hostssl

    只能使用SSL TCP/IP连接

    hostnossl

    不能使用SSL TCP/IP连接

    METHOD 为身份验证模式一般分为:ident、trust、md5、password、peer、reject。其中ident和peer模式仅适用于Linux、Unix和Max,不适用于Windows。

    trust

    该模式可以不用密码直接连接数据库,不安全

    md5

    该模式很常用,要求连接发起者携带用md5算法加密的密码

    password

    该模式是使用明文密码进行身份验证,也不安全,不推荐

    ident

    该模式下系统会将请求发起者的操作系统用户映射为PostgesSQL数据库内部用户,并以该内部用户的权限登录,且此时无需提供登录密码。操作系统用户与数据库内部用户之间的映射关系会记录在pg_ident.conf文件中。

    peer

    该模式使用连接发起端的操作系统名进行身份验证。仅限于Linux、BSD、Mac OS X和Solaris,并且仅可用于本地服务器发起的连接。

    reject

    该模式表示拒绝所有请求。

    多种身份验证模式可以同时使用,即使是针对同一个数据库。对于每一个连接请求,postgres服务器会按照pg_hba.conf文件中记录的规则条目自上而下进行检查。当匹配到第一条满足条件的规则,就不再向下检查。如果到文件末尾都没有搜到匹配的规则,那么按默认规则处理,即拒绝该链接。

    注意,常见错误就是把规则放错,例如若将0.0.0.0/0 reject规则放到127.0.0.1/32 trust前面,那么所有本地用户都无法连接,即使下面有规则允许也不行。

    例子:

    1、允许IP为10.0.8.100的username以密码方式访问数据库dbname

    host dbname username 10.0.8.100/32 md5

    2、允许IP为10.1.1.0~10.1.1.255网段的用户以密码方式登录数据库

    host all all 10.1.1.0/24 md5

    3、允许IP为192.168.1.0的用户可以不使用密码直接登录数据库

    host all all 192.168.1.0/32 trust

    许多配置文件修改后需要重启postgres服务才能生效,但有的只需执行一下重新加载即可生效。重新加载并不会中断连接。

    命令:pg_ctl reload -D your_data_directory_here

    如果是在linux以服务的形式安装的,那么执行:

    命令:service postgresql-9.5 reload

    另外一种加载配置文件的方法是以超级用户登录到任何一个数据库后执行:

    命令:select pg_reload_conf();

  • 相关阅读:
    seafile-docker
    nextcloud-docker
    nexus升级
    vSphere中设置K3OS
    文件大小排序
    Java SpringBoot Beetl模板
    电商 Python 生成刷单公司需要的评论格式2
    电商 Python 生成刷单公司需要的评论格式
    电商 Python 访客Excel合并
    Java SpringBoot Thymeleaf模板
  • 原文地址:https://www.cnblogs.com/chen-msg/p/13753561.html
Copyright © 2020-2023  润新知