# 修改pg_hba配置
#### 操作场景
您可以配置指定数据库的pg_hba，以保证可以正常连接到数据库。
#### 约束限制
- 变更中的实例，不可进行该操作。
- 备份恢复的所有实例都不会继承原实例的pg_hba配置，需要重新配置。
- METHOD当前只支持配置md5、reject、scram-sha-256这三种认证方式的一种。
 
#### 操作步骤
1. [登录RDS管理控制台](https://console.huaweicloud.com/rds/#/rds/management/list)。
2. 单击管理控制台左上角的![](https://support.huaweicloud.com/usermanual-rds-pg/zh-cn_image_0000002606863935.png)，选择区域。
3. 在"实例管理"页面，选择目标实例，单击实例名称，进入实例的"概览"页。
4. 在左侧导航栏，单击"数据库与账号管理"，选择"pg_hba修改"页签。 
   系统默认创建了四条规则。
   图1pg_hba修改   
   ![](https://support.huaweicloud.com/usermanual-rds-pg/zh-cn_image_0000002248941197.png "点击放大")
   
   
5. 该默认规则可以修改和删除，并支持手动添加新规则。操作完成后，在列表上方单击"提交"，在弹框中，单击"确认"。各配置项说明请参见[表1]。
   
   图2提交确认   
   ![](https://support.huaweicloud.com/usermanual-rds-pg/zh-cn_image_0000002213661464.png "点击放大")
   ![](https://support.huaweicloud.com/usermanual-rds-pg/public_sys-resources/note_3.0-zh-cn.png)
   提交修改后的新配置仅对新连接生效，对于旧连接，需要您断开已有连接后重新连接才能生效。
    表1参数说明 
   | 参数        | 取值示例                                              | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
   |:---|:---|:---|
   | 优先级      | 0                                               | 表示该条记录的优先级，0优先级最高，表示配置优先级最高。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
   | TYPE     | host                                             | 支持配置以下取值： - host：该条记录验证TCP/IP连接，包括SSL连接和非SSL连接。  - hostssl：该条记录只验证通过SSL建立的TCP/IP连接。  - hostnossl：该条记录只验证通过非SSL建立的TCP/IP连接。   |
   | DATABASE | all                                               | 允许用户访问的数据库，all表示允许用户访问所有数据库。如果配置多个，可通过逗号（,）分隔，配置的数据库必须是已存在的且不能是template0，template1这两个数据库。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   | USER   | user0                                              | 允许哪些用户访问数据库，填写[创建数据库账号](https://support.huaweicloud.com/usermanual-rds-pg/rds_pg_05_0009.html)中创建的用户名。如果配置多个，可通过逗号（,）分隔。必须是已创建的用户且不能配置成系统用户，如：rdsAdmin, rdsMetric, rdsBackup, rdsRepl, rdsProxy, rdsDdm, rdsDisaster。                                                                                                                                                                                                                                                                                                                                                               |
   | ADDRESS   | 0.0.0.0/0 ::0/0 | 允许用户从哪个或哪些IP访问数据库，0.0.0.0/0（IPv4地址）和::0/0（IPv6地址）表示允许用户从任意IP地址访问数据库。 说明： 修改后不在该网段的IP将会连接不上，请谨慎修改。                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   | MASK     | 空                                                 | 掩码。如果ADDRESS为IP地址，可以通过此参数指定IP地址的掩码。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   | METHOD   | md5                                              | 认证方法，支持： - reject  - scram-sha-256  - md5                                                                              |
      
   
   
6. 除手动添加规则外，还支持通过导入方式批量新增pg_hba配置信息。 
   在列表上方单击"导入规则"，在右侧弹窗中配置新规则后，单击"确认"。
   - 新增规则（最低优先级）：在已有规则最后追加新规则，优先级低于已有规则。
   
   - 新增规则（最高优先级）：在已有规则最前追加新规则，优先级高于已有规则。
   
   - 覆盖已有规则。
   
   
   
   
7. 在列表上方单击"恢复默认"，可以恢复到系统默认创建的四条规则。
8. [使用psql命令行连接数据库](https://support.huaweicloud.com/usermanual-rds-pg/rds_pg_connect_03.html)，测试pg_hba配置的连通性。
   
   ```
   psql -h <实例连接地址> -U <hba配置中的用户名> -p 5432 -d <hba配置中的数据库名>
   ```
   
   
 
