Docs 菜单
Docs 主页
/
MongoDB Atlas
/ /

访问加密快照

在此页面上

  • Considerations
  • 步骤

当您使用客户密钥管理进行静态加密时,Atlas 会对快照中的 mongod数据文件进行加密。如果您要下载并恢复快照, mongod则无法读取这些数据文件,除非它有权访问可提供相应解密密钥的 KMIP服务器。您可以使用KMIP代理独立版访问mongod数据文件。您可以将KMIP代理独立版下载为适用于您的特定操作系统的二进制文件。

默认情况下, KMIP独立代理使用存储在/<dbPath>/cloudProviderCredentials/<keyID>.<cloudProvider>.metadata文件中的档案。

  • 如果轮换密钥,这些凭证会反映最新的密钥轮换。

  • 如果KMIP代理独立运行二进制文件无法使用这些档案解密快照,则二进制文件会显示一条错误消息,说明您必须更新磁盘上包含旧档案的元数据文件。 您可以使用任何文本编辑器更新元数据文件。

  • 如果您对加密密钥使用基于角色的访问权限,则/<dbPath>/cloudProviderCredentials/<keyID>.<cloudProvider>.metadata文件将不包含有效的档案。

    执行以下操作之一:

    • 更新/<dbPath>/cloudProviderCredentials/<keyID>.<cloudProvider>.metadata文件。 使用空的roleId 。 根据可以访问accessKeyIdsecretAccessKey字段中的加密密钥的IAM角色提供临时档案:

      {
      "accessKeyId": "TemporaryAccessKeyId",
      "secretAccessKey": "TemporarySecretAccessKey",
      "roleId": "",
      "region": "us-east-1"
      }
    • 使用以下选项启动KMIP代理独立运行的实例二进制文件:

      • awsAccessKey

      • awsSecretAccessKey

      • awsSessionToken

      • awsRegion

    要根据 IAM 角色生成临时档案,请参阅Amazon Web Services 文档。

1
  1. 如果尚未显示,请选择包含所需项目的组织导航栏中的Organizations菜单。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果 Clusters(数据库部署)页面尚未出现,请单击侧边栏中的 Database(数据库)。

    此时会显示“集群”页面。

2
  1. 单击集群的名称。

  2. 单击 Backup 标签页。

    如果集群没有Backup标签页,则禁用该集群的 Atlas 备份,并且没有可用的快照。您可以在扩展集群时启用备份。

    显示“备份”页面。

3
  1. 如果尚未选择,请单击Snapshots标签页。

  2. Actions 列中,展开 Actions 菜单,然后单击要下载的快照的 Download

    Atlas 准备快照。当准备下载时,Atlas 会生成一个一次性使用的下载链接,该链接会在四小时后过期。 Atlas 通过电子邮件向您发送下载链接,并将其显示在Restores & Downloads标签页中。

4

Preparing Snapshot Download模式中,单击Download KMIP Proxy并选择适合您操作系统的二进制文件。

提示

您还可以执行以下步骤之一来访问download KMIP Proxy Standalone链接:

  • 单击 Restores & Downloads 标签页。

  • 在 Atlas 中,进入项目的 Advanced 页面。

    1. 如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含项目的组织。

    2. 如果尚未显示,请从导航栏的 Projects 菜单中选择您的项目。

    3. 在侧边栏中,单击Security标题下的Advanced

      显示“高级”页面。

    该链接将显示在Encryption at Rest using your Key Management部分。

5
  1. 打开终端或命令提示符窗口。

  2. 使用指定参数调用以下命令:

    kmipProxyStandalone
    -awsAccessKey <accessKey> -awsSecretAccessKey <secretAccessKey> \
    -awsSessionToken <token> -awsRegion <region> -cloudProvider aws \
    -dbpath <dbpath> -kmipPort <kmipPort> -mongodPort <mongodPort>
    Parameter
    说明
    awsAccessKey

    有权访问客户主密钥的IAM访问密钥 ID。

    仅当您未在/<dbPath>/cloudProviderCredentials/<keyID>.<cloudProvider>.metadata文件中指定accessKeyId时才为必填项。

    awsSecretAccessKey

    有权访问客户主密钥的IAM秘密访问密钥。

    仅当您未在/<dbPath>/cloudProviderCredentials/<keyID>.<cloudProvider>.metadata文件中指定secretAccessKey时才为必填项。

    awsSessionToken
    授予临时AWS安全凭证时使用的令牌。
    awsRegion

    AWS 客户主密钥所在的 AWS 区域。

    仅当您未在/<dbPath>/cloudProviderCredentials/<keyID>.<cloudProvider>.metadata文件中指定region时才为必填项。

    cloudProvider
    您的云服务提供商。值必须是aws
    dbpath
    要为其创建代理的mongod数据目录的路径。
    kmipPort
    运行KMIP代理的端口。
    mongodPort
    运行mongod的端口。
    kmipProxyStandalone
    -cloudProvider <azure|gcp> -dbpath <dbpath> \
    -kmipPort <kmipPort> -mongodPort <mongodPort>
    Parameter
    说明
    cloudProvider
    您的云服务提供商。有效值为azuregcp
    dbpath
    要为其创建代理的mongod数据目录的路径。
    kmipPort
    运行KMIP代理的端口。
    mongodPort
    运行mongod的端口。

KMIP代理独立版为localhost生成KMIP证书并将其写入dbpath

6

使用指定参数调用以下命令:

mongod --dbpath <dbpath> --port <mongodPort> --enableEncryption --kmipPort <kmipPort> --kmipServerName 127.0.0.1 --kmipServerCAFile <dbpath>/kmipCA.pem --kmipActivateKeys false --kmipClientCertificateFile <dbpath>/kmipClient.pem
Parameter
说明
dbpath
mongod存储数据的目录路径。
port
mongod侦听客户端连接的端口。
kmipPort
KMIP服务器侦听的端口。
kmipServerCAFile
用于验证客户端与KMIP服务器的安全连接的 CA 文件的路径。
kmipActivateKeys
对于 MongoDB Server v 5 。 2或更高版本的标志,用于指定是激活还是禁用 MongoDB 服务器的密钥。启动 MongoDB Server 时,此参数的值必须为false
kmipClientCertificateFile
用于在KMIP服务器上对 MongoDB 进行身份验证的客户端证书的路径。

mongod充当绑定到127.0.0.1KMIP服务器,并在指定的kmipPort上运行。

7

通过mongoshMongoDB Compass或通过标准实用程序(例如mongodump或 mongorestore)连接到mongod ,访问您的数据文件

您还可以使用静态加密来恢复快照。

后退

加密

在此页面上