Docs 菜单
Docs 主页
/ /

符合外部标准的合规功能

使用以下Atlas功能来解决合规要求。

为了帮助您满足安全性、合规性和隐私要求,MongoDB Atlas 旨在提供最高级别的标准一致性和法规合规性。

Atlas 数据平台经过严格的独立第三方审核,以验证其安全性、隐私性和组织控制。这些审核有助于确保平台符合合规性及监管要求,包括那些特定于高度监管行业的要求。

Atlas 遵守合规框架,包括 ISO/IEC 27001、SOC 2 Type II、PCI DSS 以及我们 Atlas 信任中心列出的其他框架。您可以在我们的客户数信任门户中查看和下载证明、合规报告和其他合规文件。

MongoDB Atlas 政府版是首个获得 FedRAMP® Moderate 授权的完全托管多云开发者数据平台:

  • 使用安全、完全托管、专用的 FedRAMP® 授权环境。

  • 支持美国政府的独特需求和任务。

  • 提供一套功能和将旧版应用程序现代化所需的可扩展性。

为了支持您的合规性要求,Atlas 资源策略提供了组织范围的控制措施,用于配置和管理 Atlas 资源,以符合您的安全、合规和操作最佳实践。组织所有者可以定义规则来管理用户在创建或修改资源(例如集群、网络配置和项目设置)时的操作。我们建议您在创建组织时,依据贵公司的标准设置资源策略。

Atlas 资源策略通过帮助您实现以下目标来支持您的合规目标:

  • 强制执行最低 TLS 版本:在所有 Atlas 部署中强制使用现代 TLS 协议,增强安全性并降低与旧版和不太安全版本相关的风险。这可以确保所有传输中的数据都符合现代加密标准。

  • 自定义默认 TLS 密码套件:根据操作需求选择一组允许的特定 TLS 密码套件,以优化安全性,同时消除与旧版加密方法相关的漏洞。这允许对加密协议进行微调以满足特定的合规要求。

  • 限制 VPC 对等互连修改:通过已建立的 VPC 对等互连连接实现安全的跨网络通信,同时防止配置更改。当前项目级对等连接保持活动状态,并保留其现有的路由表和安全协议,允许客户查看但不能更改这些一对一的 VPC 关系及其相关的网络控制机制。

  • 限制私有端点修改:通过现有的只读私有端点配置来维护安全的服务连接。项目级连接在其当前私有 IP 寻址方案下仍能正常运行,而客户可以在其 VPC 内查看但不能修改这些专用服务连接点。

  • 控制 IP 访问列表:防止对 IP 访问列表进行未经授权的修改,确保对数据库的网络访问保持一致和受控。这通过保留精心定义的网络边界并防止意外的配置更改来加强数据库的安全性。

  • 设置集群层限制:通过设定开发者在资源预配时必须遵循的最大和最小集群规模限制来定义部署的防护措施。这种边界设置方法可确保团队在组织批准的参数内部署适当规模的环境,优化基础设施利用率,同时在所有项目工作负载中实施一致的资源分配策略。

  • 设置维护窗口要求:通过要求所有项目设置维护窗口来提高平台的稳定性。这种治理控制可确保组织建立一个可预测的更新周期(不规定具体的时间框架),以支持根据运营需求进行一致的系统维护。

  • 设置云提供商和区域:设置您的云提供商,并在多个区域和提供商之间分配集群,以满足数据驻留要求并确保高可用性。

  • 阻止使用通配符 IP 地址:在 IP 访问列表或防火墙规则中排除通配符 IP 地址,从而确保仅从明确允许的 IP 地址访问集群。通配符 IP 地址为 0.0.0.0/0,允许从任何位置访问。

要了解更多信息,请参阅 Atlas 资源策略。

以下资源策略示例允许在 AWS 上创建集群:

{
"name": "Only Allow Clusters on AWS",
"policies": [
{
"body": "forbid ( principal, action == cloud::Action::\"cluster.createEdit\", resource) unless { context.cluster.cloudProviders == [cloud::cloudProvider::\"aws\"] };"
}
]
}

以下示例创建了一个 Terraform 资源策略文件,您可以使用它在应用程序中强制执行资源策略。该文件实施以下策略:

  • 将集群修改限制为仅限于指定的云提供商。

  • 禁止从通配符 IP 地址访问集群。

  • 指定最小和最大集群大小。

  • 防止对私有端点的修改。

resource "mongodbatlas_resource_policy" "restrict_cloud_provider" {
org_id = var.org_id
name = "restrict-cloud-provider"
policies = [
{
body = <<EOF
forbid (
principal,
action == ResourcePolicy::Action::"cluster.modify",
resource
)
unless
{ context.cluster.cloudProviders == [ResourcePolicy::CloudProvider::"<cloud provider name>"] };
EOF
},
]
}
resource "mongodbatlas_resource_policy" "forbid_project_access_anywhere" {
org_id = var.org_id
name = "forbid-project-access-anywhere"
policies = [
{
body = <<EOF
forbid (
principal,
action == ResourcePolicy::Action::"project.ipAccessList.modify",
resource
)
when {context.project.ipAccessList.contains(ip("0.0.0.0/0"))};
EOF
},
]
}
resource "mongodbatlas_resource_policy" "restrict_cluster_size: {
org_id = var.org_id
name = "restrict-cluster-size"
policies = [
{
// restrict cluster size to a minimum of M30 and a maximum of M60
body = <<EOF
forbid (
principal,
action == ResourcePolicy::Action::"cluster.modify",
resource
)
when {
(context.cluster has minGeneralClassInstanceSizeValue && context.cluster.minGeneralClassInstanceSizeValue < 30)
|| (context.cluster has maxGeneralClassInstanceSizeValue && context.cluster.maxGeneralClassInstanceSize > 60)
};
EOF
},
]
}
resource "mongodbatlas_resource_policy" "prevent-modifications-private-endpoints" {
org_id = var.org_id
name = "prevent-modifications-private-endpoints"
policies = [
{
body = <<EOF
forbid (
principal,
action == ResourcePolicy::Action::"privateEndpoint.modify",
resource
)
when {context.project.privateEndpoints == [
\"aws:<VPC_ENDPOINT_ID>",
\"azure:<PRIVATE_ENDPOINT_RESOURCE_ID>:<PRIVATE_ENDPOINT_IP_ADDRESS>",
\"gcp:<GCP_PROJECT_ID>:<VPC_NAME>"
]};
EOF
},
]
}

您可以实现加密,确保数据处理所有阶段的数据安全性和合合规。加密是确保合规某些标准的最常见要求之一, Atlas提供了一设立强大的加密选项来满足这些要求。

  • 默认情况下,Atlas 会对传输中的数据进行加密。为了确保数据隐私和法规合规,Atlas 需要使用 TLS/SSL 来加密与您的数据库的连接。

  • 默认下, Atlas使用云提供商磁盘加密对所有静态数据进行加密。当使用Atlas云备份时,Atlas会使用AES-256加密来加密Atlas集群中S3存储桶中存储的所有数据。此外, Atlas支持使用Amazon Web Services KMSAKVGCP来加密存储引擎和云提供商备份。要学习;了解更多信息,请参阅使用密钥管理进行静态加密。

  • 您可以使用 Queryable Encryption 来确保对存储在 MongoDB 上的文档中选定敏感字段的加密数据的查询安全。借助 Queryable Encryption,即使用户对数据运行查询,敏感信息也能得到保护。

    使用经过充分研究的非确定性加密方案,以在安全性与功能性之间保持平衡。

    使用Queryable Encryption,您可以执行以下任务:

    • 从客户端加密敏感数据字段。

    • 将敏感数据字段作为完全随机的加密数据存储在与Atlas一起运行的数据库集群端。

    • 对加密数据运行表达性查询。

    MongoDB 完成这些任务时,服务器并不知晓所处理的数据。

    使用Queryable Encryption时,敏感数据在其整个生命周期中都会加密:传输中、静态、使用中、日志中和备份中。数据仅在客户端解密,因为只有您有权访问权限加密密钥。

    您可以使用以下机制设置可查询加密:

    • 自动加密使您能够执行加密的读取和写入操作,而无需添加对加密和解密字段的显式调用。我们建议在大多数情况下自动加密,因为它可以简化编写客户端应用程序的进程。通过自动加密, MongoDB会在写入操作中自动对字段进行加密和解密。

    • 显式加密使您能够通过MongoDB驱动程序的加密库执行加密的读取和写入操作。您必须在整个应用程序中指定使用此库进行加密的逻辑。显式加密提供了对安全性的细粒度控制,但费用是在配置集合和为MongoDB驱动程序编写代码时增加了复杂性。通过显式加密,您可以为对数据库执行的每个操作指定如何加密文档中的字段,并在整个应用程序中包含此逻辑。

      要了解更多信息,请参阅使用显式加密。

Atlas 支持 AWSAzureGCP 中超过 110+ 个区域。受支持位置的全球分布确保您可以根据数据主权和合规性要求预配集群并存储数据。了解在 Atlas 上构建的任何应用程序的数据主权要求是确保您遵守适当治理的必要条件。

您可以通过在多个区域部署 Atlas 集群来简化您的数据主权合规。当您部署多区域部署范式时,您可以将数据分区,以便其驻留在不同的区域,每个区域位于不同的地理位置。例如,您可以将欧洲客户数据存储在欧洲,将美国客户数据存储在美国。这可以让您遵守数据主权法规,并减少用户从各自区域访问数据时的延迟。

您可以将备份快照和 oplog 数据分布在多个区域。例如,您可以满足合规性要求,并将备份存储在不同的地理位置,以确保在发生区域性服务中断时进行灾难恢复。要了解更多信息,请参阅快照分布。

您可以使用Atlas中的备份合规策略来保护关键业务数据。您可以防止任何用户在预定义的保留期内修改或删除存储在Atlas中的所有备份快照和oplog数据,无论其Atlas角色如何。

这样可以确保备份完全符合 WORM(一次写入多次读取)标准。只有指定的授权用户在完成与 MongoDB 支持与法律部门的验证过程后,才能关闭此保护功能。此功能增加了强制性的手动延迟和冷却期,这样攻击者就无法更改备份策略和导出数据。要了解更多信息,请参阅配置备份合规策略

后退

数据加密

在此页面上