Docs 菜单
Docs 主页
/
MongoDB Ops Manager
/ / / /

创建一个全局 API 密钥

在此页面上

  • Resource
  • 所需角色
  • 请求参数
  • 请求路径参数
  • 请求查询参数
  • 请求正文参数
  • 响应
  • 请求示例
  • 响应示例
  • 响应标头
  • 响应体

为 Ops Manager 创建一个全局 API密钥。

基本 URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0

POST /admin/apiKeys

要求调用此端点的API密钥具有 Global Owner角色。

此端点不使用 HTTP 请求路径参数。

以下查询参数为可选参数:

名称
类型
必要性
说明
默认

pretty

布尔

Optional

指示响应正文是否应采用 Prettyprint 的标志 格式。

false

envelope

布尔

Optional

指示是否将响应包装在信封中的标志。

某些 API 客户端无法访问 HTTP 响应标头或状态代码。要解决这个问题,可在查询中设置 envelope=true

对于返回一个结果的端点,响应体包括:

名称
说明

状态

HTTP 响应代码

envelope

预期响应正文

false

您必须提供所有请求正文参数。

名称
类型
必要性
说明

desc

字符串

必需

全局API密钥的描述。 长度必须介于 1 到 250 个字符之间。

roles

字符串数组

必需

全局API密钥需要具有的角色列表。 如果提供了roles数组:

  • 提供至少一个角色

  • 确保所有角色都有效。

默认接受的全局角色包括:

API 中的角色价值
角色

GLOBAL_AUTOMATION_ADMIN

GLOBAL_BACKUP_ADMIN

GLOBAL_MONITORING_ADMIN

GLOBAL_OWNER

GLOBAL_READ_ONLY

GLOBAL_USER_ADMIN

名称
类型
说明

desc

字符串

此全局API密钥的描述。

id

字符串

此全局API密钥的唯一标识符。

links

字符串

文档数组,表示一个或多个子资源和/或相关资源(例如 列表分页 )的 链接 。有关详细信息,请参阅链接

privateKey

字符串

此全局API密钥的未编辑私钥。

publicKey

字符串

此全局API密钥的公钥。

roles

对象数组

此全局API密钥具有的角色。 此数组返回用户在 Ops Manager 中拥有的所有全局角色。

roles.roleName

字符串

角色名称。 此资源返回用户在 Ops Manager 中拥有的所有角色。可能的值为:

API 中的角色价值
角色

GLOBAL_AUTOMATION_ADMIN

GLOBAL_BACKUP_ADMIN

GLOBAL_MONITORING_ADMIN

GLOBAL_OWNER

GLOBAL_READ_ONLY

GLOBAL_USER_ADMIN

注意

发出请求的用户可以采用 {USERNAME}:{APIKEY}{PUBLIC-KEY}:{PRIVATE-KEY} 格式。

1curl --user "{PUBLIC-KEY}:{PRIVATE-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/admin/apiKeys?pretty=true" \
6 --data '{
7 "desc" : "New API key for Global Testing",
8 "roles" : [ "GLOBAL_READ_ONLY", "GLOBAL_USER_ADMIN" ]
9 }'
HTTP/1.1 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
HTTP/1.1 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 "desc" : "New API key for Global Testing",
3 "id" : "5d669ce780eef52a42cf0e1e",
4 "links" : [ {
5 "href" : "https://<OpsManagerHost>:<Port>/api/public/v1.0/orgs/null/apiKeys/5d669ce780eef52a42cf0e1e",
6 "rel" : "self"
7 } ],
8 "privateKey" : "8d080e57-5fd6-495c-9388-fe348ed1796f",
9 "publicKey" : "cfswjfck",
10 "roles" : [ {
11 "roleName" : "GLOBAL_READ_ONLY"
12 }, {
13 "roleName" : "GLOBAL_USER_ADMIN"
14 } ]
15}

后退

获取一个