Docs 主页 → 启动和管理 MongoDB → MongoDB Atlas
为数据库部署配置安全功能
在此页面上
您可以安全使用 Atlas,无需进一步设置。Atlas 预先使用安全的默认设置。您可以微调 数据库部署的安全功能,从而满足您的特殊安全需求和偏好。 查看数据库部署的以下 安全功能和注意事项。
重要
作为安全最佳实践,不要在命名空间和字段名中包含敏感信息。 Atlas 不会混淆这些信息。
预配置的安全功能
Atlas 产品具有以下安全功能:
传输中加密
Atlas 需要 TLS/SSL 来加密与数据库的连接。
要配置 SSL 或 TLS OCSP 证书撤销检查,请参阅 OCSP 证书撤销检查。
虚拟私有云
拥有一个或多个 M10+ 专用集群的所有 Atlas 项目可以获得自己的专用 VPC(如果使用 Azure,则是 VNet)。Atlas 在此 VPC 或 VNet 内部署所有专用集群。
静态加密
默认情况下,Atlas 会对存储在 Atlas 数据库部署中的所有数据进行加密。Atlas 还支持通过密钥管理进行静态加密。
必需安全功能
你必须配置以下安全功能:
网络和防火墙要求
确保应用程序可以到达的 MongoDB Atlas 环境。可通过如下方式将应用程序环境的入站网络权限访问添加到 Atlas:
将公共 IP 地址添加到您的 IP 访问列表
使用 VPC / VNet 对等互联添加私有 IP 地址。
添加私有端点。
提示
另请参阅:
如果防火墙阻止出站网络连接,则必须打开应用程序环境到 Atlas 的出站访问。您必须配置防火墙,允许应用程序建立到端口 27015 至 27017 的出站连接,从而打开 TCP 流量。这会授予应用程序访问存储在 Atlas 上的数据库的权限。
注意
默认情况下,MongoDB Atlas 集群无需能够启动与应用程序环境的连接。如果您希望通过 LDAP 身份验证和授权启用 Atlas 集群,则必须允许从 Atlas 集群直接访问安全的 LDAP 网络。只要公共 DNS 主机名指向 Atlas 集群可以访问的 IP,您就可以允许使用公共或私有 IP 来访问 LDAP。
如果您不使用VPC/VNet 对等互连并计划使用公共 IP 地址连接到 Atlas,请参阅以下页面了解更多信息:
IP 访问列表
Atlas 仅允许客户端从项目的 IP 访问列表中的条目连接到数据库部署。要进行连接,必须在 IP 访问列表中添加一个条目。要为项目设置 IP 访问列表,请参阅配置 IP 访问列表条目。
对于部署在 Google Cloud Platform (GCP) 或 Microsoft Azure 上的 Atlas 集群,请将 Google Cloud 或 Azure 服务的 IP 地址添加到 Atlas 项目的 IP 访问列表,授予这些服务对集群的访问权限。
用户身份验证或授权
Atlas 要求客户端进行身份验证才能连接到数据库。您必须创建数据库用户才能访问数据库。要为数据库部署设置数据库用户,请参阅配置数据库用户。 Atlas 为数据库部署身份验证和授权提供了许多安全功能。
如需访问项目中的数据库部署,用户必须属于该项目。 用户可以属于多个项目。
提示
另请参阅:
可选安全功能
您可以配置以下安全功能:
网络对等连接
Atlas 支持与其他 AWS、Azure 的对等互连或 Google Cloud 网络对等互连。要了解详情,请参阅设置网络对等互连。
重要
如果这是所选区域的第一个 M10+
专用付费集群,并且您计划创建一个或多个 VPC 对等互连,请在继续操作之前查看有关 VPC 对等互连的文档。
私有端点
Atlas 支持以下私有端点:
AWS 使用 AWS PrivateLink 特征
使用 Azure Private Link 的 Azure 特征
使用 Private Service Connect 的 Google Cloud 特征
要使用私有端点,请参阅了解 Atlas 中的私有端点。
统一 AWS 访问
某些 Atlas 功能(包括 数据联合 和 使用客户密钥管理的静态加密 )使用 AWS IAM 角色 用于身份验证。
要设置供 Atlas 使用的 AWS IAM 角色,请参阅设置统一 AWS 访问权限。
数据库部署身份验证和授权
Atlas 为数据库部署身份验证和授权提供了以下安全功能。
数据库用户身份验证或授权
Atlas 要求客户端进行身份验证才能访问数据库部署。您必须创建数据库用户才能访问数据库。要为您的数据库部署设置数据库用户,请参阅配置数据库用户。
数据库授权的自定义角色
使用 AWS IAM 的无密码身份验证
您可以通过以下方式为 AWS IAM 用户设置无密码身份验证:
配置 AWS IAM 角色,使用户名或密码字段成为可选项。要了解更多信息,请参阅使用 AWS IAM 角色设置无密码身份验证。
使用通过 AssumeRoleWithSAML API 操作 获取的临时凭证 。要了解更多信息,请参阅 使用 SAML 设置无密码身份验证。
使用LDAP进行用户身份验证或授权
支持使用 LDAP 来进行用户身份验证和授权。要使用 LDAP,请参阅使用 LDAP 设置用户身份验证和授权。
使用 X.509 进行用户身份验证
X.509 客户端证书为数据库用户提供项目中的数据库部署的访问权限。X.509 身份验证选项包括 Atlas 管理的 X.509 身份验证和自管理 X.509 身份验证。要了解有关自管理 X.509 身份验证的更多信息,请参阅设置自管理 X.509 身份验证。
限制 MongoDB 支持访问 Atlas 后端基础架构
组织所有者可以限制 MongoDB 生产支持员工访问其组织中 任何 Atlas 数据库部署的Atlas 后端基础架构。 组织所有者可在 Atlas 数据库部署级别授予 24 小时绕过访问限制的权限。
重要
阻止来自 MongoDB Support 的基础架构访问可能会增加支持问题响应和解决时间,并对数据库部署的可用性产生负面影响。
要启用此选项,请参阅配置 MongoDB 支持访问 Atlas 后端基础架构。
使用密钥管理进行静态加密
Atlas 支持使用 AWS KMS、Azure Key Vault 和 Google Cloud 对存储引擎和云提供商备份进行加密。如需使用静态加密,请参阅使用客户密钥管理进行静态加密。
客户端字段级加密 (Client-Side Field Level Encryption)
Atlas 支持客户端字段级加密,包括字段自动加密。所有 Atlas 用户都有权使用 MongoDB 的自动客户端字段级加密功能。
要了解更多信息,请参阅客户端字段级加密要求。
注意
MongoDB Compass 、 Atlas 用户界面和MongoDB Shell ( mongosh
) 不支持对客户端字段级加密字段进行解密。
数据库审核
Atlas 支持审核所有系统事件操作。要使用数据库审核,请参阅设置数据库审核。
访问跟踪
Atlas 直接在 Atlas 用户界面中显示身份验证日志,以便您可以轻松查看针对数据库部署进行的成功和不成功的身份验证尝试。要查看数据库访问历史记录,请参阅查看数据库访问历史记录。
Atlas 用户界面访问权限的多因素身份验证
Atlas 支持通过 MFA 来帮助控制对 Atlas 账户的访问。要设置 MFA,请参阅管理多因素身份验证选项。
支持访问 Atlas 控制面或从 Atlas 控制面进行访问
如果使用以下任何 Atlas 功能,可能需要将 Atlas IP 地址 添加到网络 IP 访问列表中:
注意
如果启用 静态加密 功能,则必须允许从公共 IP 访问部署中的所有主机,如果使用分 片集群 ,则包括 CSRS(配置服务器副本集) 。
获取 Atlas 控制平面 IP 地址
向controlPlaneIPAddresses
端点发送 GET 请求,获取当前 Atlas 控制平面 IP 地址。 API 端点以CIDR表示法返回入站和出站 Atlas 控制平面 IP 地址列表,按云提供商和地区分类,类似于以下内容:
{ "controlPlane": { "inbound": { "aws": { // cloud provider "us-east-1": [ // region "3.92.113.229/32", "3.208.110.31/32", "107.22.44.69/32" ..., ], ... } }, "outbound": { "aws": { // cloud provider "us-east-1": [ // region "3.92.113.229/32", "3.208.110.31/32", "107.22.44.69/32" ..., ], ... } } }, "data_federation": { "inbound": {}, "outbound" {} }, "app_services": { "inbound": {}, "outbound" {} }, ... }
如需将返回的 IP 地址添加到云提供商的 KMS IP 访问列表,请参阅使用 AWS、Azure 和 GCP 管理客户密钥的前提条件。
必需出站访问权限
出站访问是来自 Atlas 控制平面的流量。我们建议您使用 Atlas Admin API获取当前出站 Atlas 控制平面 IP 地址。
必需入站访问权限
入站访问是指进入 Atlas 控制平面的流量。如果您的网络仅允许向特定 IP 地址发出出站 HTTP 请求,则必须允许来自以下 IP 地址的访问,这样 Atlas 才能与 Webhook 和KMS通信:
3.92.113.229 3.208.110.31 3.211.96.35 3.212.79.116 3.214.203.147 3.215.10.168 3.215.143.88 3.232.182.22 18.214.178.145 18.235.30.157 18.235.48.235 18.235.145.62 34.193.91.42 34.193.242.51 34.194.7.70 34.196.80.204 34.196.151.229 34.200.66.236 34.235.52.68 34.236.228.98 34.237.40.31 34.238.35.12 35.153.40.82 35.169.184.216 35.171.106.60 35.173.54.44 35.174.179.65 35.174.230.146 35.175.93.3 35.175.94.38 35.175.95.59 44.206.200.18 44.207.9.197 44.207.12.57 50.19.91.100 52.7.232.43 52.71.233.234 52.73.214.87 52.87.98.128 52.203.106.167 54.145.247.111 54.163.55.77 54.167.217.16 100.26.2.217 107.20.0.247 107.20.107.166 107.22.44.69
允许访问 Data Federation
如果网络仅支持向特定 IP 地址发出出站请求,则必须支持访问 TCP 端口 27017 上的以下 IP 地址,以便请求到达联合数据库实例:
18.204.47.197 34.237.78.67 54.91.120.155 34.217.220.13 54.203.115.97 54.69.142.129 108.129.35.102 18.200.7.156 99.81.123.21 3.8.218.156 3.9.125.156 3.9.90.17 18.196.201.253 3.122.67.212 35.158.226.227 13.54.14.65 52.64.205.136 3.6.3.105 65.1.222.250 18.231.94.191 54.94.3.214
OCSP 证书撤销检查
如果网络只允许到特定 IP 地址的出站请求,为了允许 SSL 或 TLS OCSP 证书撤销检查,必须允许访问 SSL 或 TLS 证书 OCSP URL 中的 Atlas CA(证书颁发机构)OCSP 响应程序服务器。
要禁用OCSP证书撤销检查,请参阅应用程序使用的MongoDB 驱动程序版本的文档。