专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

hashicorp/vault-plugin-database-mongodbatlas Docker 镜像 - 轩辕镜像

vault-plugin-database-mongodbatlas
hashicorp/vault-plugin-database-mongodbatlas
Hashicorp Vault的MongoDB Atlas数据库后端插件,用于与Vault集成管理MongoDB Atlas数据库。
0 次下载activehashicorp镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

Vault MongoDB Atlas 数据库插件 Docker 镜像文档

一、镜像概述和主要用途

1.1 概述

Vault MongoDB Atlas 数据库插件是 HashiCorp Vault 的官方后端插件,旨在为 MongoDB Atlas 项目提供动态数据库凭证管理能力。该 Docker 镜像封装了插件的运行环境,支持在容器化部署中集成至 Vault 生态系统。

1.2 主要用途
  • 程序化生成 MongoDB Atlas 数据库的临时、唯一用户凭证
  • 实现 MongoDB Atlas 访问凭证的自动轮换与生命周期管理
  • 通过 Vault 统一管控 MongoDB Atlas 的数据库访问权限
  • 支持在容器环境中快速部署和运行插件

二、核心功能和特性

2.1 动态凭证管理
  • 自动生成:通过 Vault API 或 CLI 动态生成 MongoDB Atlas 用户凭证
  • 临时有效:凭证具有可配置的生命周期,到期自动失效
  • 最小权限:支持基于角色的权限粒度控制,仅授予必要访问权限
2.2 安全增强
  • 唯一性:每个凭证关联独立用户,避免共享凭证风险
  • 自动轮换:支持定时或按需轮换凭证,降低凭证泄露风险
  • 审计追踪:通过 Vault 审计日志记录所有凭证生成与使用行为
2.3 集成能力
  • MongoDB Atlas 原生支持:通过 MongoDB Atlas Admin API 实现凭证管理
  • Vault 生态兼容:无缝集成 Vault 的策略系统、身份认证和机密管理能力
  • 容器化部署:轻量级镜像设计,支持 Kubernetes、Docker Compose 等容器编排平台
2.4 运行环境约束
  • 仅支持运行在 Linux 操作系统的 Vault 服务器
  • 兼容 Docker 19.03+ 及容器运行时

三、使用场景和适用范围

3.1 典型使用场景
  • 多环境数据库访问:开发、测试、生产环境的 MongoDB Atlas 动态凭证隔离
  • CI/CD 流水线集成:为自动化流程生成临时数据库访问凭证,避免硬编码凭证
  • 第三方服务访问:向外部服务授予临时数据库权限,到期自动回收
3.2 适用范围
  • 已部署 HashiCorp Vault 的企业级架构
  • 使用 MongoDB Atlas 托管数据库服务的场景
  • 对数据库访问安全有严格合规要求的组织(如***、***等)
  • 需要实现最小权限原则和凭证自动轮换的环境

四、使用方法和配置说明

4.1 前置条件
  • Vault 服务器(v1.6+),运行于 Linux 操作系统
  • Docker 环境(19.03+)或容器运行时(如 containerd)
  • MongoDB Atlas 账号及 API 凭证(需具备 Project Owner 或 Database Access Admin 权限)
  • 网络连通性:Vault 服务器可访问 MongoDB Atlas API([***])
4.2 获取镜像

通过 Docker Hub 或 HashiCorp 容器仓库拉取官方镜像:

bash
docker pull hashicorp/vault-plugin-database-mongodbatlas:latest
4.3 Docker 运行配置
4.3.1 基础运行命令
bash
docker run -d \
  --name vault-mongodbatlas-plugin \
  --restart unless-stopped \
  -v /etc/vault/plugins:/vault/plugins \
  hashicorp/vault-plugin-database-mongodbatlas:latest
4.3.2 参数说明
参数说明示例值
-v /etc/vault/plugins:/vault/plugins挂载插件目录至 Vault 可访问路径宿主机插件目录需与 Vault 配置一致
--name容器名称vault-mongodbatlas-plugin
--restart容器重启策略unless-stopped
4.4 Vault 配置流程
4.4.1 启用数据库机密引擎
bash
vault secrets enable database
4.4.2 注册插件至 Vault
bash
# 获取插件 SHA256 校验和(需替换为实际镜像内插件二进制路径)
PLUGIN_SHA256=$(sha256sum /vault/plugins/vault-plugin-database-mongodbatlas | awk '{print $1}')

# 注册插件
vault plugin register -sha256="$PLUGIN_SHA256" database mongodbatlas-database-plugin
4.4.3 配置 MongoDB Atlas 连接
bash
vault write database/config/mongodbatlas \
  plugin_name="mongodbatlas-database-plugin" \
  allowed_roles="readonly,readwrite" \
  public_key="ATLAS_PUBLIC_KEY" \          # MongoDB Atlas API 公钥
  private_key="ATLAS_PRIVATE_KEY" \        # MongoDB Atlas API 私钥
  project_id="ATLAS_PROJECT_ID" \          # MongoDB Atlas 项目 ID
  base_url="[***]"     # API 基础地址(默认值)
4.4.4 创建访问角色
bash
# 创建只读角色(示例)
vault write database/roles/readonly \
  db_name="mongodbatlas" \
  creation_statements='{
    "database_name": "admin",
    "roles": [{"roleName": "read", "databaseName": "myappdb"}]
  }' \
  default_ttl="1h" \
  max_ttl="24h"

五、配置参数说明

5.1 Vault 配置参数(database/config/mongodbatlas)
参数名类型必选说明
plugin_namestring是插件名称,固定为 mongodbatlas-database-plugin
public_keystring是MongoDB Atlas API 公钥
private_keystring是MongoDB Atlas API 私钥
project_idstring是MongoDB Atlas 项目 ID
base_urlstring否MongoDB Atlas API 基础 URL(默认:[***])
allowed_rolesstring否允许关联的 Vault 角色列表(逗号分隔)
5.2 角色创建参数(database/roles/<role-name>)
参数名类型必选说明
db_namestring是关联的数据库配置名称(即 database/config/<name> 中的 <name>)
creation_statementsJSON是MongoDB 用户创建语句(定义权限、数据库等)
default_ttlstring否凭证默认生命周期(默认:1h)
max_ttlstring否凭证最大生命周期(默认:24h)

六、Docker 部署方案示例

6.1 Docker Run 命令
bash
# 运行插件容器并挂载至 Vault 插件目录
docker run -d \
  --name vault-mongodbatlas-plugin \
  --restart unless-stopped \
  -v /opt/vault/plugins:/plugins \  # 宿主机 Vault 插件目录(需与 Vault 配置一致)
  hashicorp/vault-plugin-database-mongodbatlas:latest
6.2 Docker Compose 配置
yaml
version: "3.8"

services:
  vault-plugin:
    image: hashicorp/vault-plugin-database-mongodbatlas:latest
    container_name: vault-mongodbatlas-plugin
    restart: unless-stopped
    volumes:
      - /opt/vault/plugins:/plugins  # 挂载至 Vault 可访问的插件目录
    networks:
      - vault-network  # 确保与 Vault 容器在同一网络

networks:
  vault-network:
    external: true  # 假设已存在 Vault 网络

七、使用示例

7.1 生成临时凭证
bash
vault read database/creds/readonly

输出示例:

Key                Value
---                -----
lease_id           database/creds/readonly/abc123...
lease_duration     1h
lease_renewable    true
password           vauLt-abcdef***...
username           v-token-readonly-xyz789...
7.2 使用凭证访问 MongoDB Atlas
bash
# 使用生成的用户名/密码连接 MongoDB Atlas
mongo "mongodb+srv://<username>:<password>@cluster0.mongodb.net/myappdb" --authenticationDatabase admin
7.3 验证凭证权限
javascript
// 在 MongoDB Shell 中验证权限
db.runCommand({ connectionStatus: 1 })  // 确认连接成功
db.getRoles({ showPrivileges: true })   // 验证已分配的只读权限

八、注意事项

  1. 环境兼容性:仅支持运行在 Linux 操作系统的 Vault 服务器,不支持 Windows 或 macOS 环境。
  2. 权限控制:MongoDB Atlas API 凭证需具备 Project Owner 或 Database Access Admin 权限,否则无法创建/管理用户。
  3. 网络安全:确保 Vault 服务器与 MongoDB Atlas API 之间网络通畅,建议通过 VPC peering 或 IP 白名单限制访问。
  4. 镜像更新:定期更新插件镜像以获取安全补丁和功能更新,推荐使用具体版本标签(如 v1.2.0)而非 latest。
  5. 凭证轮换:通过 Vault 策略配置 default_ttl 和 max_ttl,建议根据业务需求设置合理的轮换周期(如生产环境 default_ttl=15m)。

九、参考链接

  • 官方插件源码
  • MongoDB Atlas API 文档
  • Vault 数据库机密引擎文档
查看更多 vault-plugin-database-mongodbatlas 相关镜像 →
vault logo
vault
by library
官方
Vault是一款通过统一接口安全访问机密的工具,提供严格的访问控制和详细的审计日志。
1166500M+ pulls
上次更新:1 年前
hashicorp/vault logo
hashicorp/vault
by HashiCorp, an IBM Company
认证
HashiCorp Vault官方Docker镜像,用于在容器环境中安全存储、访问和管理机密信息,提供官方认证的部署方案。
206100M+ pulls
上次更新:4 天前
hashicorp/vault-k8s logo
hashicorp/vault-k8s
by HashiCorp, an IBM Company
认证
提供Vault与Kubernetes之间的一流集成,支持两者高效安全协作的工具。
2050M+ pulls
上次更新:24 天前
vaultwarden/web-vault logo
vaultwarden/web-vault
by Vaultwarden
用于vaultwarden Docker镜像的Web保管库构建,支持其Web界面功能。
2950K+ pulls
上次更新:4 天前
grafana/fluent-bit-plugin-loki logo
grafana/fluent-bit-plugin-loki
by Grafana Labs
认证
暂无描述
10100M+ pulls
上次更新:1 个月前
bitnamicharts/vault logo
bitnamicharts/vault
by VMware
认证
Bitnami提供的HashiCorp Vault Helm chart,用于在Kubernetes集群上部署Vault——一款通过统一界面安全管理和访问密钥的工具,支持安全存储、动态密钥、数据加密及撤销功能。
1M+ pulls
上次更新:4 个月前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
hashicorp/vault-plugin-database-mongodbatlas
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429