MongoDB Atlas for Government API的运行方式与 Atlas API相同,不同之处在于它使用以下基本 URL:
https://cloud.mongodbgov.com/api/atlas/v2
要使用MongoDB Atlas 政府 API 来管理您的集群,您必须对API请求进行身份验证。MongoDB Atlas for Government API接受以下身份验证方法:
服务帐户访问权限令牌 (OAuth 2.0)
API密钥(HTTP摘要式身份验证)
使用示例
此 curl示例检索项目的数据库用户。为您的首选身份验证方法选择适当的标签页:
要使用服务帐户发出 API 请求,请使用该服务帐户生成访问令牌,然后在请求中使用访问令牌:
检索您的服务帐户的客户端机密。
找到您在创建服务帐户后立即保存的以 mdb_sa_sk_ 开头的客户端密钥。如果未保存客户端密钥,则必须生成新的客户端密钥。
请求访问令牌。
重要
访问令牌的有效期为 1 小时(3600 秒)。您无法刷新访问令牌。当此访问令牌过期时,重复此步骤以生成新的访问令牌。
将以下示例中的 {BASE64-AUTH} 替换为上一步的输出,然后运行:
1 curl --request POST \ 2 --url https://cloud.mongodbgov.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":"eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCIsImtpZCI6ImYyZjE2YmE4LTkwYjUtNDRlZS1iMWYwLTRkNWE2OTllYzVhNyJ9.eyJpc3MiOiJodHRwczovL2Nsb3VkLWRldi5tb25nb2RiLmNvbSIsImF1ZCI6ImFwaTovL2FkbWluIiwic3ViIjoibWRiX3NhX2lkXzY2MjgxYmM2MDNhNzFhNDMwYjkwNmVmNyIsImNpZCI6Im1kYl9zYV9pZF82NjI4MWJjNjAzYTcxYTQzMGI5MDZlZjciLCJhY3RvcklkIjoibWRiX3NhX2lkXzY2MjgxYmM2MDNhNzFhNDMwYjkwNmVmNyIsImlhdCI6MTcxMzkwNTM1OSwiZXhwIjoxNzEzOTA4OTU5LCJqdGkiOiI4ZTg1MTM3YS0wZGU1LTQ0N2YtYTA0OS1hMmVmNTIwZGJhNTIifQ.AZSFvhcjwVcJYmvW6E_K5UnDmeiX2sJgL27vo5ElzeBuPawRciKkn6ervZ6IpUTx2HHllGgAAMmhaP9B66NywhfjAXC697X9KcOzm81DTtvDjLrFeRSc_3vFmeGvfUKKXljEdWBnbmwCwtBlO5SJuBxb1V5swAl-Sbq9Ymo4NbyepSnF","expires_in":3600,"token_type":"Bearer"}%
调用 API。
将以下示例中的 {ACCESS-TOKEN} 替换为上一步的输出。
以下示例 GET 请求返回组织中的所有项目:
curl --request GET \ --url https://cloudgov.mongodb.com/api/atlas/v2/groups \ --header 'Authorization: Bearer {ACCESS-TOKEN}' \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json'
以下示例 POST 请求采用请求正文并在您的组织中创建一个名为 MyProject 的项目:
curl --header 'Authorization: Bearer {ACCESS-TOKEN}' \ --header "Content-Type: application/json" \ --header "Accept: application/vnd.atlas.2023-02-01+json" \ --include \ --request POST "https://cloudgov.mongodb.com/api/atlas/v2/groups" \ --data ' { "name": "MyProject", "orgId": "5a0a1e7e0f2912c554080adc" }'
要使用API密钥发出API请求,请将 {PUBLIC-KEY}:{PRIVATE-KEY} 替换为您的API密钥并运行:
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --header "Accept: application/vnd.atlas.2025-03-12+json" \ # update date to desired API version --include \ --request GET "https://cloud.mongodbgov.com/api/atlas/v2/groups/{PROJECT-ID}/databaseUsers?pretty=true"
您可以在
PROJECT-ID中找到Project Settings 。您可以在组织的Access Manager中的API Keys标签页下生成API密钥对。
请参阅 Atlas 文档
要了解有关使用API的更多信息,请参阅Atlas API。
要了解有关使用服务帐户或API密钥对API进行身份验证的更多信息,请参阅Atlas 管理 API 身份验证方法。
要配置 API,请参阅配置 Atlas API 访问权限。
有关可能错误的列表,请参阅Atlas API 错误代码。
创建项目
您必须在创建时指定用于标准或政府 (gov) 地区的项目。您不能在同一项目中跨政府和标准地区部署集群。
默认情况下,AtlasGov API 会指定用于标准地区的新项目。
要使用 API 为政府地区创建项目,请在POST请求数据中包含以下内容:
"regionUsageRestrictions" : "GOV_REGIONS_ONLY"
Atlas for Government 注意事项
以下云提供商、MongoDB 产品和功能不适用于所有API资源:
AZURE
Atlas Online Archive
Atlas Triggers
MongoDB Charts
Atlas Device SDKs
免费、Flex 和
M10集群
许多商业 Atlas API资源都是有限的或不可用的:
数据库用户
使用SCRAM进行身份验证的数据库用户必须使用SCRAM-SHA-256 。
集群
AtlasGov 集群必须为 M20 或更高层级。Atlas不支持免费和 Flex 集群。
警报
与付款方式相关的警报不可用。
警报可以来自多个不同的电子邮件地址。 有关详细信息,请参阅警报和通信。
第三方集成设置
您必须具有Project Owner角色才能配置第三方监控集成。
Datadog
与 Datadog 集成时,AtlasGov 使用 Datadog for 政府 站点 (US1-FED)。
要学习;了解有关 US1-FED 的更多信息,请参阅DataDog 文档。
云备份
不允许在标准项目和仅限 Gov 地区的项目之间进行恢复。 如果从仅限 Gov 区域( Amazon Web Services GovCloud 或GCP有保证的工作负载)项目中的集群创建备份,则数据只能恢复到仅限 Gov 区域的项目中的集群。 同样的限制也适用于标准项目,即标准区域中的备份只能恢复到标准项目中的集群。
Amazon Web Services GovCloud 和GCP Assured Workloads 区域之间支持跨云恢复。
Flex 集群Atlas 备份快照和恢复作业
Flex 集群在 AtlasGov 中不可用。
Online Archive
在线存档在 AtlasGov 中不可用。
网络对等
您只能对等Amazon Web Services GovCloud 区域与Amazon Web Services GovCloud 区域中的MongoDB集群。 您只能将Amazon Web Services商业区域与Amazon Web Services商业区域中的MongoDB集群对等。
您只能对等GCP Assured Workloads 区域与GCP Assured Workloads 区域中的MongoDB集群。
私有端点
您只能将Amazon Web Services GovCloud 区域与Amazon Web Services GovCloud 区域中的MongoDB集群链接。 您只能将Amazon Web Services商业区域与Amazon Web Services商业区域中的MongoDB集群关联。
您只能将GCP Assured Workloads 区域与GCP Assured Workloads 区域中的MongoDB集群关联。
监控和日志
除了标准 Atlas 日志记录之外,AtlasGov 还记录与所有失败的登录尝试、临时锁定和失败的API摘要式身份验证相关的用户名和 IP 地址。
使用客户密钥管理进行静态加密
您必须在Amazon Web Services GovCloud 和GCP Assured Workloads 区域中使用KMS密钥,以加密仅Amazon Web Services GovCloud 和GCP Assured Workloads 区域项目中的数据。 您必须在Amazon Web Services商业区域中使用KMS密钥来加密仅限Amazon Web Services商业区域的项目中的数据。
Atlas 用户
您无法为政府用户创建 MongoDB Atlas。 MongoDB Atlas for Government 仅可通过受邀会员使用。
Atlas Stream Processing
Atlas Stream Processing 在 AtlasGov 中不可用。
Triggers
Atlas Triggers 在 AtlasGov 中不可用。