如何在 Postman 中使用 MongoDB Atlas 管理 API

2025 年 1 月 29 日 | 阅读 15 分钟

引言

MongoDB Atlas 是该公司提供的一种基于云的数据库服务。其目的是简化 MongoDB 数据库的扩展、维护和部署。MongoDB Atlas 是一个完全托管的数据库即服务(DBaaS)解决方案,让开发人员能够更多地专注于应用程序开发,而不是数据库管理。这与需要手动设置和维护的传统数据库形成对比。

MongoDB Atlas 提供的众多功能包括实时性能洞察、复杂的安全选择和自动备份。它通过支持 Azure、Google Cloud 和 Amazon 上的多云安装来提供灵活性和冗余。该服务具有数据分析和可视化集成功能,是满足现代数据需求的完整解决方案。

MongoDB Atlas 在现代应用程序开发中的重要性

在当今的应用程序开发环境中,可扩展、高性能和安全的数据库至关重要。MongoDB Atlas 通过提供以下功能来满足这些需求:

  • 可扩展性:通过 MongoDB Atlas,开发人员可以通过更新实例类型或添加更多分片来轻松地垂直或水平扩展其数据库。这确保了应用程序在处理大量数据和流量时性能不会下降。
  • 高可用性:在发生硬件故障或其他问题时,Atlas 提供自动故障转移和备份功能,以确保应用程序保持运行且数据不丢失。维持业务连续性需要这样做。
  • 安全性:MongoDB Atlas 附带复杂的安全功能,包括 IP 白名单、传输中和静态加密以及身份管理系统集成。这些功能有助于满足不同的监管标准并保护敏感数据。
  • 成本效益:MongoDB Atlas 通过使用云基础设施,减少了对物理硬件和相关维护费用的需求。此外,它还提供可变定价选项,使企业只需为实际使用的资源付费。
  • 易用性:用户友好的界面和详尽的文档使所有经验水平的开发人员都能轻松管理数据库。自动化管理功能也减少了开发团队的工作量。

MongoDB Atlas 是现代开发人员工具包中不可或缺的工具。它使开发人员能够快速有效地创建可扩展、安全和可靠的应用程序。

前提条件

MongoDB Atlas 帐户

  • 查看 MongoDB Atlas 网页:打开您喜欢的浏览器,访问 [MongoDB Atlas](https://mongodb.ac.cn/cloud/atlas)。
  • 注册帐户:在网站上,选择“免费开始”或“免费试用”选项。您将被转到注册页面。请输入您的姓名、电子邮件地址和密码。如果您想更快地注册,也可以使用您的 Google 帐户。
  • 确认您的电子邮件:输入您的信息后,点击“创建帐户”。在您的收件箱中查找 MongoDB Atlas 验证电子邮件。要激活您的帐户,请点击验证链接。
  • 配置您的集群:集群创建后,您必须配置访问权限。从左侧菜单中选择“数据库访问”,然后选择“添加新数据库用户”。输入用户名和密码以创建用户。根据您的要求分配正确的职责。之后,选择“网络访问”,然后选择“添加 IP 地址”。您可以提供来自 IP 地址或任何位置的访问权限。

MongoDB Atlas 用户界面

  • 集群仪表板:此主仪表板显示您的所有集群。每个集群都提供连接、访问详细信息和执行各种管理任务的选项。
  • 数据浏览器:此功能允许您直接从 Atlas 用户界面中探索和使用您的集合和数据库。您可以检查文档、执行搜索甚至进行更改。
  • 性能顾问:此工具提供有关您的集群性能的信息,并提出改进建议,例如构建索引以提高查询性能。
  • 备份和恢复:控制备份配置并使用备份恢复您的数据库。这对于保证数据完整性和可恢复数据是必要的。
  • 通知和监控:创建个性化通知以监控您的集群功能和整体运行状况。检查日志和统计数据以识别问题。

Postman 安装

  • 访问 Postman 网站
    在您的网络浏览器中访问 [Postman](https://www.postman.com/downloads/)。
  • 下载 Postman:选择适合您操作系统的版本(Windows、macOS 或 Linux)。单击下载按钮开始下载 Postman 安装程序。
  • 安装 Postman:下载完成后,打开安装程序文件。按照屏幕上显示的说明在您的计算机上安装 Postman。安装完成后打开 Postman 程序。
  • 注册 Postman 帐户:将出现一个对话框,要求您登录或注册。使用您的电子邮件地址注册或您的 Google 帐户继续。通过创建帐户,您可以与他人协作并存储您的 API 查询。

Postman 功能基础概述

  • 集合:将您的 API 查询分组到不同的组中。团队成员可以通过共享集合进行协作。
  • 请求:生成和监督对 API 的请求。每个请求都可以有唯一的 URL、标头、内容和 HTTP 方法(GET、POST、PUT、DELETE 等)。将请求保存到集合中以便重用。
  • 环境变量:使用环境变量管理和在多个环境(开发、阶段和生产)之间切换。这有助于动态管理 URL、API 密钥和其他变量。
  • 脚本和测试:创建测试以验证 API 的响应。您可以使用 Postman 创建基于 JavaScript 的测试。要处理复杂情况并自动化流程,请使用请求前和请求后脚本。
  • API 文档:直接使用 API 为您的集合创建文档,然后与您的团队或其他相关方共享。
  • 协作工具:Postman 提供共享工作区和版本控制以及其他团队协作工具。这对于涉及多个团队成员的更大项目特别有用。

满足这些条件并使用 Postman 的 MongoDB Atlas 管理 API,您将能够开始高效地管理您的 MongoDB Atlas 集群。

设置 MongoDB Atlas 管理 API

API 密钥和访问管理

  • 登录 MongoDB Atlas:访问 MongoDB Atlas 网站并输入您的登录凭据。
  • 转到项目设置:从左侧导航窗格中,选择您要生成 API 密钥的项目。切换到“项目设置”。
  • 访问 API 密钥部分:在“项目设置”页面上找到“访问管理”选项。选择“API 密钥”。
  • 创建一个新的 API 密钥:从菜单中选择“创建 API 密钥”。为 API 密钥添加描述(例如,“Postman API 密钥”)。
  • 分配权限和角色:根据所需的访问级别,为 API 密钥分配职责。常见的角色包括
    • 项目所有者:对所有项目资源拥有完全权限。
    • 项目只读:对项目资源的只读访问权限。
    • 集群管理员:处理集群及其配置。
    • 选择您的 API 密钥的相关角色。
  • 要生成和复制 API 密钥,请选择“生成”选项。请复制 API 密钥并妥善保管。请注意,此时您将只能读取完整的 API 密钥。
  • 保存更改:验证并存储更改。

不同的角色和权限

有效的访问管理需要透彻理解角色和权限。

  • 项目所有者:拥有完整的管理权限,包括添加、删除和更改用户、集群以及其他项目资源的能力。
  • 项目只读:提供对项目材料的访问权限,但限制修改。
  • 集群管理员:可以添加、编辑和删除集群,但不参与用户管理或其他项目范围的配置。
  • .
  • 读写数据访问:允许在集群内读写数据,但不允许管理修改。
  • 只读数据访问:只能从集群内读取数据。

允许 IP 地址

保护 MongoDB Atlas API 访问的第一个重要步骤是允许列出 IP 地址。这可确保您的 Atlas 资源只能响应来自特定 IP 地址的查询。

允许 API 访问 IP 地址的步骤

  • 打开 MongoDB Atlas 并登录:登录您的 Atlas MongoDB 帐户。
  • 导航到网络访问:从左侧导航窗格中,选择您当前正在处理的项目。从“安全”菜单中选择“网络访问”。
  • 添加 IP 地址:单击“添加 IP 地址”。在弹出的对话框中输入您希望允许的 IP 地址。如果您需要允许某个范围的 IP 地址,还可以输入 CIDR 块。IP 地址的解释是一个可选字段。
  • 确认并保存:要将 IP 地址添加到白名单,请单击“确认”按钮。新的 IP 地址将包含在白名单 IP 地址列表中。

IP 白名单在保护 API 访问中的重要性

IP 地址白名单是出于多种原因而采取的关键安全预防措施。

  • 访问控制:此功能通过限制对您的 MongoDB Atlas 资源的访问到某些已知 IP 地址,降低了未经授权访问的可能性。
  • 减小攻击面:您可以通过仅允许受信任的 IP 地址来减少攻击者的可能访问点数量。
  • 合规性和审计:确保只有授权系统和网络才能访问敏感数据有助于满足合规性要求。

生成 API 密钥并通过角色和权限控制访问是配置 MongoDB Atlas 管理 API 的必要步骤。允许列出 IP 地址也保证了您的 API 访问安全。通过遵循这些说明,您可以使用 Postman 的管理 API 安全高效地管理您的 MongoDB Atlas 资源。

为 MongoDB Atlas API 配置 Postman

创建新的 Postman 集合 您可以通过在 Postman 中创建集合来更有效地管理和安排您的 API 调用。

  • 打开 Postman:在您的计算机上打开 Postman 程序。
  • 建立新集合:从左侧的侧边栏中选择“集合”选项卡。按下“新建集合”按钮(通常是一个加号或一个带有“新建集合”字样的按钮)。将出现一个对话框。为您的集合命名,例如“MongoDB Atlas API”。您还可以包含描述以提供有关该集合的更多信息。要保存新集合,请单击“创建”。
  • 添加文件夹以组织请求(可选):您可以在新集合中创建文件夹来组织您已发出的请求。要添加文件夹,请单击集合名称旁边的三个点。为文件夹提供一个合适的名称,例如“用户管理”或“集群管理”。按“创建”以包含该文件夹。
  • 将请求添加到集合:选择集合或集合中的文件夹。按下“添加请求”按钮。为您的请求命名,例如“创建集群”。要将请求包含在您的集合中,请单击“保存”。现在,您可以设置请求的具体信息,包括 HTTP 方法、URL、标头和内容。

添加环境变量

  • Postman 的环境变量允许您在查询之间组织和重用数据,例如 URL 和 API 凭据。
  • 要启动新环境,请单击 Postman 界面右上角的“环境”菜单,然后选择它。转到“管理环境”并选择它。要构建新环境,请单击显示模式中的“添加”。为您的环境命名,例如“MongoDB Atlas”。
  • 集成环境变量:通过为每个变量命名和赋值,将变量添加到新构建的环境中。
    • baseUrl:MongoDB Atlas API 的基本 URL,通常为
    • `https://cloud.mongodb.com/api/atlas/v1.0`。
    • apiKey:您的 MongoDB Atlas API 密钥。
    • projectId:您的 MongoDB Atlas 项目 ID。
    • clusterName:您的 MongoDB Atlas 集群名称。

示例

  • 保存环境:输入所有必要的变量后,单击“保存”。
  • 在请求中使用环境变量:您可以在生成请求时使用双大括号语法引用这些变量。例如
    • URL:`{{baseUrl}}/groups/{{projectId}}/clusters/{{clusterName}}`
    • Headers:使用 `{{apiKey}}` 添加授权标头。
  • 在环境之间移动:如果您有多个环境(例如,不同项目或阶段(如开发和生产)的独立环境),您可以使用“环境”下拉列表在环境之间移动。

常见的 MongoDB Atlas 管理 API 请求

创建新集群

  • 使用 API 端点创建新集群:在 MongoDB Atlas 中,您建立了一个新集群,
  • 必要条件和示例请求:建立新集群所需的基本要求如下
    • 名称:集群的名称。
    • clusterType:集群类型,通常设置为 `REPLICASET`。
    • 提供商设置:云提供商的配置,例如 AWS、GCP 或 Azure。
    • diskSizeGB:集群的磁盘大小。
    • backupEnabled:布尔值,用于打开或关闭备份。

示例请求

示例响应

管理数据库和集合

  • 创建数据库
  • 创建集合
  • 更新集合
  • 删除集合

示例请求和响应

  • 创建数据库
  • 创建集合
  • 更新集合
  • 删除集合

监控和警报

  • 启用监控:S
  • 创建警报配置
  • 查看警报配置

使用 API 配置警报

  • 启用监控的示例请求
  • 创建警报配置的示例请求
  • 查看警报配置的示例请求
  • 示例响应

高级 API 用法

自动化数据库备份

为确保在数据丢失或损坏时进行数据保护和恢复,自动化数据库备份至关重要。您可以使用 MongoDB Atlas 管理 API 以编程方式管理备份,从而自动化和调度备份过程。

用于管理备份的 API 调用

1. 创建快照

  • 端点:POST /groups/{GROUPID}/clusters/{CLUSTERNAME}/backup/snapshots
  • 描述:创建指定集群的快照。
  • 示例请求

2. 列出快照

  • 端点:GET /groups/{GROUP-ID}/clusters/{CLUSTERNAME}/backup/snapshots
  • 描述:列出指定集群的所有快照。
  • 示例请求

3. 恢复快照

  • 端点:POST /groups/{GROUPID}/clusters/{CLUSTERNAME}/backup/snapshots/{SNAPSHOT-ID}/restore
  • 描述:将特定快照恢复到集群。
  • 示例请求

调度自动备份

您可以通过 API 构建和维护备份规则,这将允许您调度自动备份。这包括建立拍摄快照的时间表。

1. 创建备份策略

  • 端点:POST /groups/{GROUP-ID}/clusters/{CLUSTER-NAME}/backup/schedule
  • 描述:为指定的集群设置备份计划。
  • 示例请求

2. 获取备份策略

  • 端点:GET /groups/{GROUP-ID}/clusters/{CLUSTER-NAME}/backup/schedule
  • 描述:检索指定集群的备份计划。
  • 示例请求

扩展集群S

优化性能和管理波动的需求需要扩展您的集群。您可以使用 MongoDB Atlas 管理 API 根据您的需求向上或向下扩展集群。

1. 向上/向下扩展集群

  • 端点:`PATCH /groups/{GROUP-ID}/clusters/{CLUSTER-NAME}`
  • 描述:修改指定集群的配置。
  • 示例请求

2. 修改集群存储大小

  • 端点:`PATCH /groups/{GROUP-ID}/clusters/{CLUSTER-NAME}`
  • 描述:更改指定集群的存储大小。
  • 示例请求

示例场景和请求

  • 为增加的流量向上扩展:如果您预计流量增加,您可以将集群扩展到更大的实例大小。
  • 高峰期后向下扩展:为了节省开支,您可以在高峰期后缩减规模。

用户管理

以编程方式管理数据库用户对于维护访问控制和安全性至关重要。您可以使用 MongoDB Atlas 管理 API 管理用户角色和权限,以及创建、编辑和删除用户。

通过 API 管理数据库用户

1. 创建新用户

  • 端点:`POST /groups/{GROUP-ID}/databaseUsers`
  • 描述:创建新的数据库用户。
  • 示例请求

2. 更新用户角色

  • 端点:`PATCH /groups/{GROUP-ID}/databaseUsers/admin/{USERNAME}`
  • 描述:更新现有用户的角色。
  • 示例请求

3. 删除用户

  • 端点:`DELETE /groups/{GROUP-ID}/databaseUsers/admin/{USERNAME}`
  • 描述:删除指定用户。
  • 示例请求

以编程方式设置角色和权限

为了确保用户具有适当的访问级别,您可以使用 API 设置角色和权限。

1. 为用户分配角色

  • 端点:`POST /groups/{GROUP-ID}/databaseUsers`
  • 描述:为新用户分配角色。
  • 示例请求

2. 修改用户权限

  • 端点:`PATCH /groups/{GROUP-ID}/databaseUsers/admin/{USERNAME}`
  • 描述:修改现有用户的权限。
  • 示例请求

错误处理和故障排除

常见错误及其解决方案

  • 401 未授权:此错误表示提供的 API 密钥无效或不具有所需的授权。确保您使用的是正确的 API 密钥。确保您尝试完成的操作具有 API 密钥上的必要权限。验证密钥是否未停用或过期。
  • 403 禁止:当您尝试完成的操作需要您的 API 密钥不具备的访问权限时,会发生此错误。验证分配给 API 密钥的角色和权限是否正确。然后,通过 MongoDB Atlas 仪表板中的访问控制设置检查密钥的配置。
  • 404 未找到:此错误表示您请求的资源不可用。检查端点 URL 中是否有拼写错误或不正确的路由参数。验证您尝试访问的资源是否存在。
  • 429 请求过多:此错误消息表示您同时发送了太多 API 调用。将重试逻辑和指数退避合并到您的程序中。监控您的 API 使用情况并优化您的查询以保持在速率限制内。
  • 500 内部服务器错误:此错误表示服务器端问题。一段时间后,再次尝试请求。如果问题仍然存在,请查看 MongoDB Atlas 状态页面上是否有任何当前维护或中断。
  • 400 错误请求:此错误表示请求的语法不正确,导致服务器无法理解。验证有效负载和请求参数的准确性。确保所有必要的字段都已填写并格式正确。

API 错误处理的最佳实践

  • 一致的错误处理策略:为处理所有 API 请求中的问题制定一个系统计划。创建一个您可以在所有脚本中使用的集中式错误处理模块或函数。
  • 平稳降级:使用回退或默认行为构建您的应用程序以平稳处理问题。确保在 API 失败时,您的应用程序仍然可以运行,尽管功能有限。
  • 记录和观察:启用彻底的 API 请求和响应日志记录,包括错误消息和堆栈跟踪。使用监控工具跟踪 API 使用情况、错误率和性能数据。
  • 具有指数退避的重试逻辑:为了防止服务器过载,对于临时问题,例如 429(请求过多)或 500(内部服务器错误),请使用具有指数退避的重试逻辑。为了让服务器有时间恢复,逐渐延长重试之间的间隔。
  • 验证和清理:在提交 API 查询之前验证所有输入参数和数据,以避免因不正确的输入而导致的错误。清理输入以防止注入攻击和其他安全漏洞。
  • 用户友好的错误消息:确保错误消息易于理解和使用,以便最终用户可以解决问题。不要提供恶意人员可能用来对付您的内部错误数据。

结论

总而言之,开发人员和管理员可以通过学习如何在 Postman 中使用 MongoDB Atlas 管理 API 来有效管理 MongoDB 集群。用户可以通过利用 Postman 的脚本功能和简单界面,轻松地与 Atlas 的管理操作进行交互,例如集群创建和配置、用户管理和性能监控。API 的灵活性通过实现自动化和集成到 CI/CD 工作流中来提高工作流效率。正确管理错误和故障排除是充分利用 API 的关键方面。更好地了解常见故障,例如服务器或身份验证问题,以及使用强大的错误处理技术,例如日志记录和重试逻辑,可以确保更顺畅的操作和更快的故障解决。进一步增强安全性和可靠性的是对最佳实践的强调,例如一致的文档和安全的密钥管理。最终,Postman 与 MongoDB Atlas 管理 API 的集成简化了数据库管理任务,同时还促进了更强大和可扩展的开发环境,帮助团队自信地构建可靠的应用程序。