以编程方式访问 Cloud Manager
要仅使用 API向组织或项目授予编程访问权限,请创建API密钥或服务帐号。这可确保用提供服务户名和密码的密钥和访问权限令牌永远不会通过网络发送。 API密钥和服务帐户:
不能用于通过用户界面日志Cloud Manager 。
必须像授予用户一样被授予角色,以确保API密钥和服务帐户可以调用API端点而不会出错。
属于一个组织,但可被授予对该组织中任意数量项目的访问权限。
要学习;了解有关这两种身份验证方法的更多信息,请参阅身份验证。
管理对组织的编程访问
为组织授予编程访问权限
使用以下过程,通过API密钥或服务帐户向组织授予编程访问权限。要学习;了解有关这两种身份验证方法的更多信息,请参阅身份验证。
MongoDB Cloud ManagerGo在MongoDBOrganization Settings Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
单击 Organizations 菜单旁边的 Organization Settings 图标。
显示“组织设置”页面。
转到 Organization Access Manager(快速入门)页面。
单击侧边栏中的 Access Manager(支持)。
显示“组织访问经理”页面。
填写API Key Information 表单。
在Add API Key页面的API Key Information步骤中:
字段 | 值 |
---|---|
说明 | 输入新API密钥的描述。 |
组织权限 | 为 API 密钥选择一个 或多个新角色 。 |
MongoDB Cloud ManagerGo在MongoDBOrganization Settings Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
单击 Organizations 菜单旁边的 Organization Settings 图标。
显示“组织设置”页面。
转到 Organization Access Manager(快速入门)页面。
单击侧边栏中的 Access Manager(支持)。
显示“组织访问经理”页面。
输入服务帐户信息。
输入一个 Name。
输入一个 Description。
从 Client Secret Expiration(客户端密钥到期)菜单中选择持续时间。
从Organization Permissions(组织权限)菜单中,为服务帐户选择一个或多个新角色。
查看对组织的编程访问权限
您可以查看有权访问权限组织的所有API密钥或服务帐户的详细信息。
更新对组织的编程访问权限
您可以更改组织中API密钥或服务帐户的角色、描述或访问权限列表。您还可以为服务帐户生成新的客户端密钥。
MongoDB Cloud ManagerGo在MongoDBOrganization Settings Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
单击 Organizations 菜单旁边的 Organization Settings 图标。
显示“组织设置”页面。
转到 Organization Access Manager(快速入门)页面。
单击侧边栏中的 Access Manager(支持)。
显示“组织访问经理”页面。
填写API Key Information 表单。
在Add API Key页面的API Key Information步骤中:
字段 | 值 |
---|---|
说明 | 输入新API密钥的描述。 |
组织权限 | 为 API 密钥选择一个 或多个新角色 。 |
撤销对组织的编程访问权限
托管对项目的编程访问
授予对项目的编程访问权限
使用以下过程,通过API密钥或服务帐户授予对项目的编程访问权限。要学习;了解有关这两种身份验证方法的更多信息,请参阅身份验证。
MongoDB Cloud ManagerGo在MongoDBProject Access Manager Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
执行以下步骤之一:
从导航栏的Access Manager菜单中选择Project Access 。
在 Projects 菜单旁边,展开 Options 菜单,单击 Project Settings,然后单击侧栏中的 Access Manager。
将显示项目访问管理器页面。
填写API Key Information 表单。
在Add API Key页面的API Key Information步骤中:
字段 | 值 |
---|---|
说明 | 输入新API密钥的描述。 |
项目权限 | 为 API 密钥选择一个 或多个新角色 。 |
MongoDB Cloud ManagerGo在MongoDBProject Access Manager Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
执行以下步骤之一:
从导航栏的Access Manager菜单中选择Project Access 。
在 Projects 菜单旁边,展开 Options 菜单,单击 Project Settings,然后单击侧栏中的 Access Manager。
将显示项目访问管理器页面。
输入服务帐户信息。
输入一个 Name。
输入一个 Description。
从 Client Secret Expiration(客户端密钥到期)菜单中选择持续时间。
从项目权限菜单中,为服务帐户选择一个或多个新角色。
查看项目的编程访问权限
您可以查看有权访问权限您的项目的所有API密钥或服务帐户的详细信息。
MongoDB Cloud ManagerGo在MongoDBProject Access Manager Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
执行以下步骤之一:
从导航栏的Access Manager菜单中选择Project Access 。
在 Projects 菜单旁边,展开 Options 菜单,单击 Project Settings,然后单击侧栏中的 Access Manager。
将显示项目访问管理器页面。
MongoDB Cloud ManagerGo在MongoDBProject Access Manager Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
执行以下步骤之一:
从导航栏的Access Manager菜单中选择Project Access 。
在 Projects 菜单旁边,展开 Options 菜单,单击 Project Settings,然后单击侧栏中的 Access Manager。
将显示项目访问管理器页面。
更新项目的编程访问权限
MongoDB Cloud ManagerGo在MongoDBProject Access Manager Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
执行以下步骤之一:
从导航栏的Access Manager菜单中选择Project Access 。
在 Projects 菜单旁边,展开 Options 菜单,单击 Project Settings,然后单击侧栏中的 Access Manager。
将显示项目访问管理器页面。
填写API Key Information 表单。
在Add API Key页面的API Key Information步骤中:
字段 | 值 |
---|---|
说明 | 输入新API密钥的描述。 |
项目权限 | 为 API 密钥选择一个 或多个新角色 。 |
MongoDB Cloud ManagerGo在MongoDBProject Access Manager Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
执行以下步骤之一:
从导航栏的Access Manager菜单中选择Project Access 。
在 Projects 菜单旁边,展开 Options 菜单,单击 Project Settings,然后单击侧栏中的 Access Manager。
将显示项目访问管理器页面。
撤销对项目的编程访问权限
MongoDB Cloud ManagerGo在MongoDBProject Access Manager Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
执行以下步骤之一:
从导航栏的Access Manager菜单中选择Project Access 。
在 Projects 菜单旁边,展开 Options 菜单,单击 Project Settings,然后单击侧栏中的 Access Manager。
将显示项目访问管理器页面。
MongoDB Cloud ManagerGo在MongoDBProject Access Manager Cloud Manager中,Go 页面。
如果尚未显示,组织从导航栏中的Organizations菜单。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
执行以下步骤之一:
从导航栏的Access Manager菜单中选择Project Access 。
在 Projects 菜单旁边,展开 Options 菜单,单击 Project Settings,然后单击侧栏中的 Access Manager。
将显示项目访问管理器页面。
提出 API 请求
Cloud Manager API使用两种身份验证方法之一对请求进行身份验证: API密钥或服务帐户。您将需要在配置首选身份验证方法时保存的密钥或密钥,以完成以下过程。
您的请求应类似于以下示例,其中,{PUBLIC-KEY}
是您的 API 公钥,{PRIVATE-KEY}
是相应的私钥。
以下示例GET
请求将返回当前用户的所有项目:
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --include \ --request GET "https://cloud.mongodb.com/api/public/v1.0/groups?pretty=true"
以下示例POST
请求采用请求正文并在组织中创建名为 MyProject
的项目:
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --include \ --request POST "https://cloud.mongodb.com/api/public/v1.0/groups?pretty=true" \ --data ' { "name": "MyProject", "orgId": "deffb2031b938da53f16d714" }'
要使用服务帐户发出 API 请求,请使用该服务帐户生成访问令牌,然后在请求中使用访问令牌:
检索您的服务帐户的客户端机密。
找到以 mdb_sa_sk_
开头的客户机密;这是创建服务帐户后立即保存的客户机密,当时也是唯一一次可以查看客户机密的时机。如果未保存客户端机密,则必须生成新的客户端机密。
请求访问令牌。
将以下示例中的 {BASE64-AUTH}
替换为上一步的输出,然后运行:
1 curl --request POST \ 2 --url https://cloud.mongodb.com/api/oauth/token \ 3 --header 'accept: application/json' \ 4 --header 'cache-control: no-cache' \ 5 --header 'authorization: Basic {BASE64-AUTH}' \ 6 --header 'content-type: application/x-www-form-urlencoded' \ 7 --data 'grant_type=client_credentials'
{"access_token":"eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCIsImtpZCI6ImYyZjE2YmE4LTkwYjUtNDRlZS1iMWYLTRkNWE2OTllYzVhNyJ9eyJpc3MiOiJodHRwczovL2Nsb3VkLWRldi5tb25nb2RiLmNvbSIsImF1ZCI6ImFwaTovL2FkbWluIiwic3ViIjoibWRi3NhX2lkXzY2MjgxYmM2MDNhNzFhNDMwYjkwNmVmNyIsImNpZCI6Im1kYl9zYV9pZF82NjI4MWJjNjAzYTcxYTQzMGI5MZlZjciLCJhY3RvcklkIjoibWRiX3NhX2lkXzY2MjgxYmM2MDNhNzFhNDMwYjkwNmVmNyIsImlhdCI6MTcxMzkwNTM1OSiZXhwIjoxNzEzOTA4OTU5LCJqdGkiOiI4ZTg1MTM3YS0wZGU1LTQ0N2YtYTA0OS1hMmVmNTIwZGJhNTIifQAZSFvhcjwVcJYmvW6E_K5UnDmeiX2sJgL27vo5ElzeBuPawRciKkn6ervZ6IpUTx2HHllGgAAMmhaP9B66NywhfjAXC67X9KcOzm81DTtvDjLrFeRSc_3vFmeGvfUKKXljEdWBnbmwCwtBlO5SJuBxb1V5swAl-Sbq9Ymo4NbyepSnF""expires_in":3600,"token_type":"Bearer"}%
重要
访问令牌的有效期为 1 小时(3600 秒)。您无法刷新访问令牌。当此访问令牌过期时,重复此步骤以生成新的访问令牌。
调用 API。
将以下示例中的 {ACCESS-TOKEN}
替换为上一步的输出。示例,--header 'Authorization: Bearer eyJ...pSnF' \
。
以下示例GET
请求将返回当前用户的所有项目:
curl --request GET \ --url https://cloud.mongodb.com/api/public/v1.0/groups \ --header 'Authorization: Bearer {ACCESS-TOKEN}' \ --header 'Accept: application/json' \
以下示例POST
请求采用请求正文并在组织中创建名为 MyProject
的项目:
curl --header 'Authorization: Bearer {ACCESS-TOKEN}' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --include \ --request POST 'https://cloud.mongodb.com/api/public/v1.0/groups' \ --data ' { "name": "MyProject", "orgId": "5a0a1e7e0f2912c554080adc" }'