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

创建 API 密钥

在此页面上

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

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

POST /orgs/{ORG-ID}/apiKeys
名称
类型
说明
ORG-ID
字符串
要检索其API密钥的组织的唯一标识符。 使用/orgs端点检索经过身份验证的用户有权访问权限的所有组织。

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

名称
类型
说明
默认
pageNum
整型
页码(从 1 开始)。
1
itemsPerPage
整型
每页要返回的项目数,最多 500 个。
100
pretty
布尔
指示响应正文是否应采用 prettyprint 格式。
false
envelope
布尔

指示是否要将响应封装在信封中。

某些 API 客户端无法访问 HTTP 响应标头或状态代码。要修复此问题,在查询中设置 "envelope" : true

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

名称
说明
status
HTTP 响应代码
content
预期响应正文

对于返回结果列表的端点, results对象是一个信封。 Ops Manager 将status字段添加到响应正文。

需要所有正文参数。

名称
类型
说明
desc
字符串
API 密钥的描述。长度必须介于 1 到 250 个字符之间。
roles
字符串数组

API 密钥应具有的角色列表。必须至少列出一个角色,并且所有角色必须对某个组织有效。

组织角色包括:

API 中的角色价值
角色
ORG_OWNER
ORG_MEMBER
ORG_GROUP_CREATOR
ORG_READ_ONLY
名称
类型
说明
id
字符串
API 密钥的唯一标识符
desc
字符串
API 密钥的描述
privateKey
字符串
API 密钥的私钥。此密钥仅在创建时显示为未编辑。
publicKey
字符串
API 密钥的公钥
roles
对象数组
API 密钥具有的角色
roles.orgId
字符串
orgId 代表此角色适用的组织。
roles.roleName
字符串

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

API 中的角色价值
角色
ORG_OWNER
ORG_MEMBER
ORG_GROUP_CREATOR
ORG_READ_ONLY

注意

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

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--request POST "https://<ops-manager-host>/api/public/v1.0/orgs/{ORG-ID}/apiKeys?pretty=true" \
--data '{
"desc" : "New API key for test purposes",
"roles": ["ORG_MEMBER"]
}'
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}

注意

privateKey 在响应正文中显示为未编辑。出于安全目的,此示例已编辑。

{
"desc" : "New API key for test purposes",
"id" : "{API-KEY-ID}",
"links" : [ {
"href" : "https://<ops-manager-host>/api/public/v1.0/orgs/{ORG-ID}/apiKeys/{API-KEY-ID}",
"rel" : "self"
} ],
"privateKey" : "********-****-****-db2c132ca78d",
"publicKey" : "{PUBLIC-KEY}",
"roles" : [ {
"orgId" : "{ORG-ID}",
"roleName" : "ORG_MEMBER"
} ]
}

后退

获取一个 API 密钥