对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。
Docs 菜单

创建一个组织服务帐户并将其分配给一个项目

基本 URL: https://cloud.mongodb.com/api/public/v1.0

POST /groups/{PROJECT-ID}/serviceAccounts
名称
类型
说明

PROJECT-ID

字符串

要创建并向其分配服务帐户的项目的唯一标识符。 使用 /groups 端点检索经过身份验证的用户有权访问权限的所有组织。

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

名称
类型
说明
默认

pageNum

整型

页码(从 1 开始)。

1

itemsPerPage

整型

每页要返回的项目数,最多 500 个。

100

pretty

布尔

指示显示正文是否应采用 prettyprint 格式。

false

envelope

布尔

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

Some API clients cannot access the HTTP response headers or status code. To remediate this, set "envelope" : true in the query.

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

名称
说明

status

HTTP 响应代码

content

预期响应正文

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

需要所有正文参数。

名称
类型
说明

name

字符串

服务帐户名称。 接受的字符包括 A-Za-z0-9 、空格、句点 . 、撇号 ' 、逗号 , 、下划线 _ 和破折号 -

description

字符串

服务帐户的描述。 长度必须介于 1 到 250 个字符之间。接受的字符包括 A-Za-z0-9 、空格、句点 . 、撇号 ' 、逗号 , 、下划线 _ 和破折号 -

secretExpiresAfterHours

字符串

此服务帐户密钥过期的小时数

roles

字符串数组

服务帐户应具有的角色列表。 必须至少列出一个角色,并且所有角色必须对项目有效。

项目角色包括:

API 中的角色价值
角色

GROUP_AUTOMATION_ADMIN

GROUP_BACKUP_ADMIN

GROUP_DATA_ACCESS_ADMIN

GROUP_DATA_ACCESS_READ_ONLY

GROUP_DATA_ACCESS_READ_WRITE

GROUP_MONITORING_ADMIN

GROUP_OWNER

GROUP_READ_ONLY

GROUP_USER_ADMIN

名称
类型
说明

clientId

字符串

服务帐户的唯一标识符。

createdAt

timestamp

服务帐户创建时间。

name

字符串

服务帐户名称。

description

字符串

服务帐户的描述。

roles

字符串数组

secrets

对象数组

服务帐户密钥列表。

secrets.id

字符串

24string标识密钥的唯一 -十六进制字符串。

secrets.createdAt

timestamp

表示密钥创建时间的时间戳。

secrets.expiresAt

timestamp

表示密钥过期时间的时间戳。

secrets.secret

字符串

服务帐户密钥,仅在创建时可用。

注意

发出请求的用户可以采用{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://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/serviceAccounts?pretty=true" \
6 --data '{
7 "name" : "Cloud Manager service account",
8 "description" : "Service account for Cloud Manager users.",
9 "secretExpiresAfterHours" : "3600",
10 "roles": ["GROUP_READ_ONLY", "GROUP_DATA_ACCESS_ADMIN"]
11 }'
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 201 Created
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}

注意

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

1{
2 "createdAt" : "2024-08-03T14:02:40Z",
3 "description" : "Service account for Cloud Manager users.",
4 "clientId" : "mdb_sa_id_66ae38803cdf55582cb01144",
5 "name" : "Cloud Manager service account",
6 "roles" : [ "GROUP_READ_ONLY", "GROUP_DATA_ACCESS_ADMIN" ],
7 "secrets" : [ {
8 "createdAt" : "2024-08-03T14:02:40Z",
9 "expiresAt" : "2024-12-31T14:02:40Z",
10 "id" : "66ae38803cdf55582cb01143",
11 "secret" : "mdb_sa_sk_...hcOL"
12 } ]
13}