调用UpdateKibanaWhiteIps,更新指定阿里云Elasticsearch实例的Kibana访问白名单。

注意事项

  • 调用该接口时,当实例状态为生效中(activating)、失效(invalid)和冻结(inactive)时,无法更新信息。
  • 您可以通过两种方式更新白名单:IP白名单列表和IP白名单组。两种方式不能同时使用,且除了InstanceId和clientToken外,两种方式支持配置的参数也不同,具体如下:
    • IP白名单列表:kibanaIPWhitelist
    • IP白名单组:modifyMode、whiteIpGroup
  • 公网访问白名单不支持配置私网IP地址,私网访问白名单不支持配置公网IP地址。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求头

该接口使用公共请求头,无特殊请求头。请参见公共请求参数文档。

请求语法

PATCH|POST /openapi/instances/{InstanceId}/kibana-white-ips HTTP/1.1

请求参数

名称 类型 位置 是否必选 示例值 描述
InstanceId String Path es-cn-tl329rbpc0001****

实例ID。

clientToken String Query 5A2CFF0E-5718-45B5-9D4D-70B3FF****

用于保证请求的幂等性。由客户端生成该参数值,要保证在不同请求间唯一,最大不值过64个ASCII字符。

modifyMode String Query Cover

修改方式,取值含义如下:

  • Cover(默认值):使用ips参数的值覆盖原IP白名单。
  • Append:在原IP白名单中增加ips参数中输入的IP地址。
  • Delete:在原IP白名单中删除ips参数中输入的IP地址,至少需要保留一个IP地址。

RequestBody

RequestBody中还需填入以下参数,用来指定待更新的访问白名单。

名称

类型

是否必选

示例值

描述

kibanaIPWhitelist

List<String\>

["110.0.XX.XX/8"]

IP地址白名单列表。whiteIpGroup为空时可用,该参数值会更新Default白名单分组中的IP白名单配置。

不支持同时配置kibanaIPWhitelist和whiteIpGroup。

whiteIpGroup

Struct

{"groupName": "test_group_name", "ips": ["0.0.0.0", "10.2.XX.XX"]}

以白名单组方式更新Kibana访问白名单配置,仅支持更新一个白名单组。

不支持同时配置kibanaIPWhitelist和whiteIpGroup。

└ groupName

String

whiteIpGroup中必填

test_group_name

白名单组的组名。如果选填了whiteIpGroup参数,则该参数必填。

└ ips

List<String>

whiteIpGroup中必填

["0.0.0.0", "10.2.XX.XX"]

白名单组中的IP列表。如果选填了whiteIpGroup参数,则该参数必填。

注意 白名单组的增加和删除是由modifyMode为Cover的调用来实现的,Delete和Append无法实现白名单组粒度的增删,只能修改白名单组中的IP地址列表。具体说明如下:
  • modifyMode为Cover时,如果ips为空,则删除该白名单组。如果groupName不在已有白名单组组名的列表中,则会新建一个白名单组。
  • modifyMode为Delete时,删除后的ips至少需要保留一个IP地址。
  • modifyMode为Append时,需要保证白名单组组名为已创建,否则会提示NotFound的错误。

返回数据

名称 类型 示例值 描述
RequestId String E5EF11F1-DBAE-4020-AC24-DFA6C4345CAE

请求ID。

Result Object

返回结果。

kibanaPrivateIPWhitelist Array of String [ "192.168.XX.XX/24" ]

Kibana私网访问白名单列表。

kibanaIPWhitelist Array of String [ "0.0.XX.XX", "10.2.XX.XX", "110.0.XX.XX/9" ]

Kibana访问白名单列表。

说明 下文返回示例中,本文只保证包含返回数据列表中的参数,而未提到的参数仅供参考,程序中不能强制依赖获取这些参数。

示例

请求示例

PATCH /openapi/instances/es-cn-tl329rbpc0001****/kibana-white-ips HTTP/1.1
Host:elasticsearch.aliyuncs.com
Content-Type:application/json
{
    "kibanaIPWhitelist": [
        "110.0.XX.XX/8"
    ]
}
或
{
    "whiteIpGroup": {
        "groupName": "test_group_name", 
        "ips": [
            "0.0.0.0", 
            "10.2.XX.XX"
        ]
    }
}

正常返回示例

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "Result" : {
    "instanceId" : "es-cn-tl329rbpc0001****",
    "version" : "7.10.0_with_X-Pack",
    "description" : "lrr",
    "nodeAmount" : 0,
    "paymentType" : "postpaid",
    "status" : "active",
    "privateNetworkIpWhiteList" : [ "11.22.XX.XX", "0.0.XX.XX/0" ],
    "enablePublic" : false,
    "nodeSpec" : { },
    "dataNode" : false,
    "networkConfig" : {
      "vpcId" : "vpc-bp1jy348ibzulk6hn****",
      "vswitchId" : "vsw-bp1a0mifpletdd1da****",
      "vsArea" : "cn-hangzhou-h",
      "whiteIpGroupList" : [ {
        "groupName" : "default",
        "ips" : [ "0.0.XX.XX/0", "11.22.XX.XX" ],
        "whiteIpType" : "PRIVATE_ES"
      }, {
        "groupName" : "default",
        "ips" : [ "110.0.XX.XX/9" ],
        "whiteIpType" : "PUBLIC_KIBANA"
      }, {
        "groupName" : "default",
        "ips" : [ "192.168.XX.XX/24" ],
        "whiteIpType" : "PRIVATE_KIBANA"
      }, {
        "groupName" : "test_group_name",
        "ips" : [ "0.0.XX.XX", "10.2.XX.XX" ],
        "whiteIpType" : "PUBLIC_KIBANA"
      } ],
      "type" : "vpc"
    },
    "createdAt" : "2021-07-21T01:29:38.510Z",
    "updatedAt" : "2021-07-21T06:12:12.370Z",
    "commodityCode" : "elasticsearch",
    "extendConfigs" : [ {
      "configType" : "usageScenario",
      "value" : "log"
    }, {
      "configType" : "maintainTime",
      "maintainStartTime" : "02:00Z",
      "maintainEndTime" : "06:00Z"
    }, {
      "configType" : "aliVersion",
      "aliVersion" : "ali1.4.0"
    }, {
      "configType" : "followCube",
      "followClusterEnabled" : true
    } ],
    "endTime" : 4782556800000,
    "clusterTasks" : [ ],
    "vpcInstanceId" : "es-cn-tl329rbpc0001****-worker",
    "resourceGroupId" : "rg-acfmxxkk2p7****",
    "zoneCount" : 1,
    "protocol" : "HTTP",
    "zoneInfos" : [ {
      "zoneId" : "cn-hangzhou-h",
      "status" : "NORMAL"
    } ],
    "instanceType" : "elasticsearch",
    "inited" : true,
    "tags" : [ {
      "tagKey" : "acs:rm:rgId",
      "tagValue" : "rg-acfmxxkk2p7****"
    } ],
    "serviceVpc" : true,
    "domain" : "es-cn-tl329rbpc0001****.elasticsearch.aliyuncs.com",
    "port" : 9200,
    "esVersion" : "7.10.0_with_X-Pack",
    "esConfig" : {
      "action.destructive_requires_name" : "true",
      "xpack.watcher.enabled" : "false",
      "action.auto_create_index" : "+.*,-*"
    },
    "esIPWhitelist" : [ "11.22.XX.XX", "0.0.XX.XX/0" ],
    "esIPBlacklist" : [ ],
    "kibanaProtocol" : "HTTPS",
    "kibanaIPWhitelist" : [ "0.0.0.0", "10.2.XX.XX", "110.0.XX.XX/9" ],
    "kibanaPrivateIPWhitelist" : [ "192.168.XX.XX/24" ],
    "publicIpWhitelist" : [ ],
    "kibanaDomain" : "es-cn-tl329rbpc0001****.kibana.elasticsearch.aliyuncs.com",
    "kibanaPort" : 5601,
    "kibanaPrivateDomain" : "es-cn-tl329rbpc0001****-kibana.internal.elasticsearch.aliyuncs.com",
    "kibanaPrivatePort" : 5601,
    "haveKibana" : true,
    "instanceCategory" : "IS",
    "dedicateMaster" : false,
    "advancedDedicateMaster" : false,
    "masterConfiguration" : { },
    "haveClientNode" : false,
    "warmNode" : true,
    "warmNodeConfiguration" : {
      "spec" : "elasticsearch.d1.2xlarge",
      "amount" : 3
    },
    "clientNodeConfiguration" : { },
    "kibanaConfiguration" : {
      "spec" : "elasticsearch.n4.small",
      "amount" : 1,
      "disk" : 0
    },
    "elasticDataNodeConfiguration" : { },
    "haveElasticDataNode" : false,
    "dictList" : [ {
      "name" : "SYSTEM_MAIN.dic",
      "fileSize" : 2782602,
      "sourceType" : "ORIGIN",
      "type" : "MAIN"
    }, {
      "name" : "SYSTEM_STOPWORD.dic",
      "fileSize" : 132,
      "sourceType" : "ORIGIN",
      "type" : "STOP"
    } ],
    "synonymsDicts" : [ ],
    "ikHotDicts" : [ ],
    "aliwsDicts" : [ ],
    "haveGrafana" : false,
    "haveCerebro" : false,
    "enableKibanaPublicNetwork" : true,
    "enableKibanaPrivateNetwork" : true,
    "advancedSetting" : {
      "gcName" : "CMS"
    },
    "enableMetrics" : true,
    "readWritePolicy" : {
      "writeHa" : false
    }
  },
  "RequestId" : "E815C5C9-E82D-4B10-BDE0-D25340C2ACEF"
}

错误码

HttpCode 错误码 错误信息 描述
400 InstanceActivating Instance is activating. 实例目前处于生效中。
400 InstanceNotFound The instanceId provided does not exist. 实例找不到,请核对实例状态。

访问错误中心查看更多错误码。