为一个组织 API 密钥创建访问列表条目
基本 URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0
为指定的 API密钥创建一个或多个新的访问权限列表条目。
Resource
POST /orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accessList
请求路径参数
请求查询参数
以下查询参数为可选参数:
名称 | 类型 | 说明 | 默认 | ||||||
---|---|---|---|---|---|---|---|---|---|
pageNum | 整型 | 页码(从 1 开始)。 | 1 | ||||||
itemsPerPage | 整型 | 每页要返回的项目数,最多 500 个。 | 100 | ||||||
pretty | 布尔 | 指示响应正文是否应采用 prettyprint 格式。 | false | ||||||
envelope | 布尔 | 指示是否要将响应封装在信封中。 某些API客户端无法访问HTTP响应标头或状态代码。 要修复此问题,请在查询中设置 对于返回一个结果的终结点,响应体包括:
对于返回结果列表的端点, | 无 |
请求正文参数
指定一个文档数组,其中每个文档代表要添加到项目中的一个访问列表条目。 即使仅将单个访问列表条目与项目关联,也必须指定一个数组。
当您提交的POST
请求包含访问列表中尚未存在的ipAddress
或cidrBlock
值时,Ops Manager 会将这些条目添加到访问列表的现有条目列表中。Ops Manager 不会将访问列表设置为仅包含请求中指定的条目。
注意
Ops Manager 支持单个组织内最多 500 个API密钥。
在下表中, [i]
表示数组索引。
名称 | 类型 | 说明 |
---|---|---|
[i].ipAddress | 字符串 | 要添加到 API 密钥访问列表的 IP 地址。 此字段与 cidrBlock 字段互斥。 |
[i].cidrBlock | 字符串 | 要为 API 密钥添加的访问列表条目(采用CIDR表示法)。 此字段与 ipAddress 字段互斥。 |
响应
响应文档
响应JSON文档包括一个 result对象数组、一个link对象数组以及检索到的result对象总数。
名称 | 类型 | 说明 |
---|---|---|
results | 阵列 | 数组为 results 嵌入式文档部分中详细介绍的每一项包含一个对象。 |
links | 阵列 | 数组包含一个或多个指向子资源和/或相关资源的链接。 URL 之间的关系在 Web 链接规范中进行了解释。 |
totalCount | 数字 | 结果集中项目总数的整数计数。 如果对整个结果集进行分页,则它可能大于results数组中的对象数。 |
results
嵌入式文档
results
数组中的每个对象都是一个访问列表条目。
名称 | 类型 | 说明 |
---|---|---|
cidrBlock | 字符串 | 访问列表中以 CIDR 表示的 IP 地址范围。 |
count | 数字 | 源自此 IP 地址的请求总数。 |
created | 日期 | 将此 IP 地址添加到访问列表的日期。 |
ipAddress | 字符串 | 访问列表中的 IP 地址。 |
lastUsed | 日期 | 源自此 IP 地址的最近一次请求的日期。 仅当至少有一个请求源自此 IP 地址时,此字段才会出现,并且仅在从访问列表检索资源时才会更新。 |
lastUsedAddress | 字符串 | 上次调用 API 的 IP 地址。 仅当至少有一个请求源自此 IP 地址时,才会显示此字段。 |
links | 阵列 |
请求示例
1 curl --user '{USER-ID}:{API-KEY}' --digest \ 2 --header 'Accept: application/json' \ 3 --header 'Content-Type: application/json' \ 4 --include \ 5 --request POST "https://<OpsManagerHost>:<Port>/api/public/v1.0/orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accessList?pretty=true" \ 6 --data ' 7 [{ 8 "ipAddress" : "77.54.32.11" 9 }]'
响应示例
响应标头
401 Unauthorized Content-Type: application/json;charset=ISO-8859-1 Date: {dateInUnixFormat} WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false Content-Length: {requestLengthInBytes} Connection: keep-alive
200 OK Vary: Accept-Encoding Content-Type: application/json Strict-Transport-Security: max-age=300 Date: {dateInUnixFormat} Connection: keep-alive Content-Length: {requestLengthInBytes} X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
响应体
1 { 2 "links" : [ { 3 "href" : "https://<OpsManagerHost>:<Port>/api/public/v1.0/orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accessList?pretty=true&pageNum=1&itemsPerPage=100", 4 "rel" : "self" 5 } ], 6 "results" : [ { 7 "cidrBlock" : "206.252.195.126/32", 8 "count" : 47, 9 "created" : "2019-01-24T16:26:37Z", 10 "ipAddress" : "206.252.195.126", 11 "lastUsed" : "2019-01-25T16:32:47Z", 12 "lastUsedAddress" : "206.252.195.126", 13 "links" : [ { 14 "href" : "https://<OpsManagerHost>:<Port>/api/public/v1.0/orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accessList/206.252.195.126", 15 "rel" : "self" 16 } ] 17 }, { 18 "cidrBlock" : "76.54.32.11/32", 19 "count" : 0, 20 "created" : "2019-01-24T21:09:05Z", 21 "ipAddress" : null, 22 "links" : [ { 23 "href" : "https://<OpsManagerHost>:<Port>/api/public/v1.0/orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accessList/76.54.32.11", 24 "rel" : "self" 25 } ] 26 } ], 27 "totalCount" : 2 28 }