
# 设置实例负载均衡的IP访问黑白名单 - ConfiguringtheBlacklistorWhitelistofLoadBalancerIPAddresses
#### 功能介绍
设置实例负载均衡的IP访问黑白名单，黑名单、白名单只能选一种，每次调用此接口覆盖之前的设置。关闭后不限制连接的源IP地址。
#### 接口约束
该接口支持如下数据库实例：
- GeminiDB Redis
 
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/GaussDBforNoSQL/doc?api=SwitchIpGroup)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-nosql/nosql_05_0023.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                                        | 访问级别  | 资源类型（\*为必须） | 条件键                                                                                                                                                                                                                      | 别名                              | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | gaussdbfornosql:instance:updateLoadBalance | Write | instance \* | - g:ResourceTag/\<tag-key\>  - g:EnterpriseProjectId   | nosql:instance:modifyInstanceLb | -      |
     
  
 
#### URI
PUT /v3/{project_id}/instances/{instance_id}/lb/access-control
表1路径参数 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| project_id  | 是    | String | **参数解释：** 租户在某一region下的project ID。获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-nosql/nosql_projectid.html)。 **约束限制：** 不涉及。 **取值范围：** 长度为32个字符，仅由英文字母和数字组成。 **默认取值：** 不涉及。     |
| instance_id | 是    | String | **参数解释：** 实例ID。可以调用[查询实例列表和详情 - QueryingInstancesandDetails](https://support.huaweicloud.com/api-nosql/nosql_05_0016.html)接口获取。如果未申请实例，可以调用[创建实例 - CreatinganInstance](https://support.huaweicloud.com/api-nosql/nosql_05_0014.html)接口创建。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。 通过调用IAM服务[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
表3请求Body参数 
| 参数        | 是否必选 | 参数类型                                                               | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| enabled   | 是    | Boolean                                                            | **参数解释：** 是否开启负载均衡的IP访问黑白名单。 **约束限制：** 不涉及。 **取值范围：** - true： 开启。  - false： 关闭。   **默认取值：** 不涉及。                                                                                                                                                                            |
| type      | 是    | String                                                             | **参数解释：** 负载均衡IP访问控制的类型，用于设置IP访问黑白名单的过滤规则。 **约束限制：** 不涉及。 **取值范围：** - whiteList：白名单，只允许指定ip或网段访问。  - blackList：黑名单，不允许指定ip或网段访问。   **默认取值：** 不涉及。 |
| ip_groups | 是    | Array of [IpGroupItem] objects | **参数解释：** IP地址组中包含的IP或网段列表。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
   
 表4IpGroupItem 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| ip          | 是    | String | **参数解释：** IP地址或网段。 **约束限制：** 支持IPv4、IPv6。 **取值范围：** - IPv4地址（如192.168.1.1）。  - IPv4网段（如192.168.1.0/24）。  - IPv6地址（如2001:db8::1）。  - IPv6网段（如2001:db8::/32）。   **默认取值：** 不涉及。 |
| description | 否    | String | **参数解释：** 备注信息。 **约束限制：** 最长255字符。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   
#### 响应参数
**状态码： 200**
无响应参数。
#### 请求示例
- ip网段123.123.123.0/24被设置成黑名单
  ```
  PUT https://{Endpoint}/v3/054e292c9880d4992f02c0196d3ea468/instances/054e292c9880d4992f02c0196d3ein12/lb/access-control 
    
   { 
     "type" : "blackList", 
     "enabled" : true, 
     "ip_groups" : [ { 
       "ip" : "123.123.123.0/24", 
       "description" : "test" 
     } ] 
   }
  ```
  
- 关闭负载均衡黑白名单
  ```
  PUT https://{Endpoint}/v3/054e292c9880d4992f02c0196d3ea468/instances/054e292c9880d4992f02c0196d3ein12/lb/access-control 
    
   { 
     "type" : "blackList", 
     "enabled" : false, 
     "ip_groups" : [ { 
       "ip" : "123.123.123.123", 
       "description" : "test" 
     } ] 
   }
  ```
  
 
#### 响应示例
无。
#### 状态码
请参见[状态码](https://support.huaweicloud.com/api-nosql/nosql_status_code.html)。
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-nosql/nosql_error_code.html)。
