2.5 KiB
2.5 KiB
Vault开发环境指南
1. 概述
本文档介绍了如何在开发环境中使用Vault,包括初始化、密钥管理和基本操作。
2. 开发环境特点
- 使用1个解封密钥(简化操作)
- 所有密钥存储在本地开发目录
- 适用于快速测试和开发
注意:此配置仅用于开发环境,生产环境请遵循安全策略文档。
3. 初始化Vault
3.1 运行初始化脚本
/root/mgmt/deployment/scripts/init_vault_dev.sh
脚本将:
- 初始化Vault集群
- 生成1个解封密钥和根令牌
- 自动解封所有节点
- 保存环境变量配置
3.2 查看密钥信息
/root/mgmt/deployment/scripts/show_vault_dev_keys.sh
4. 使用Vault
4.1 设置环境变量
source /root/mgmt/security/secrets/vault/dev/vault_env.sh
4.2 基本操作示例
# 检查状态
vault status
# 写入密钥值
vault kv put secret/myapp/config username="devuser" password="devpassword"
# 读取密钥值
vault kv get secret/myapp/config
4.3 运行完整示例
/root/mgmt/deployment/scripts/vault_dev_example.sh
5. 目录结构
/root/mgmt/security/secrets/vault/dev/
├── init_keys.json # 初始化密钥(解封密钥和根令牌)
├── vault_env.sh # 环境变量配置
6. 重要提醒
6.1 开发环境限制
- 仅使用1个解封密钥(生产环境应使用5个密钥中的3个阈值)
- 密钥存储在本地文件系统(生产环境应分散存储)
- 适用于单人开发测试
6.2 生产环境迁移
当从开发环境迁移到生产环境时:
- 重新初始化Vault集群
- 使用5个解封密钥中的3个阈值
- 将密钥分发给不同管理员
- 遵循安全策略文档
7. 故障排除
7.1 Vault未初始化
运行初始化脚本:
/root/mgmt/deployment/scripts/init_vault_dev.sh
7.2 Vault已初始化但被密封
使用解封密钥解封:
export VAULT_ADDR='http://<节点IP>:8200'
vault operator unseal <解封密钥>
7.3 无法连接到Vault
检查Vault服务状态:
curl -v http://<节点IP>:8200/v1/sys/health
8. 清理环境
如需重新开始,可以删除密钥文件并重新初始化:
rm -f /root/mgmt/security/secrets/vault/dev/init_keys.json
/root/mgmt/deployment/scripts/init_vault_dev.sh
9. 相关文档
- Vault安全策略 - 生产环境安全指南
- Vault官方文档
- Vault API文档