Sunday, January 25, 2026

AWS IAM 访问密钥 (Access Key) 安全管理与配置指南

AWS IAM 凭据安全管理全指南:从存储到清零

在 AWS 开发过程中,Access Key 是连接本地开发环境与云端资源的钥匙。但由于它是一串无规律的字符,且 Windows 下的存储路径较为隐蔽,经常会导致“找不到”或“重装系统丢失”的问题。本文将为你梳理其存储逻辑,并提供基于 Bitwarden 的最佳管理方案。

1. 访问密钥存在哪里?

  • AWS 云端: 仅存储 Access Key ID。AWS 不存储 Secret Access Key,丢失后无法找回,只能重新生成。
  • 本地路径 (Windows 通用): %USERPROFILE%\.aws\credentials。这是一个隐藏文件夹,重装系统极易丢失。
  • 本地路径 (macOS/Linux): ~/.aws/credentials
  • 官方备份: 创建时下载的 new_user_credentials.csv 文件。

⚠️ 安全警告: 本地 credentials 文件是以明文存储的。任何能访问你本地文件的程序都能读取它。这是本地开发环境最大的安全隐患。

2. 最佳实践:将密钥存入 Bitwarden

为了跨设备同步且防止丢失,建议在 Bitwarden 中使用 Custom Fields(自定义字段) 存储:

字段名称 (Field Name) 字段值 (Value) 类型
AWS_ACCESS_KEY_ID ... (12位 ID) Text
AWS_SECRET_ACCESS_KEY 你的私钥内容 Hidden

3. Windows 下的快速配置流程 (us-west-2)

当你重装系统或换了新电脑,只需执行以下 2 分钟的操作:

  1. 安装 AWS CLI 官方程序。
  2. 打开 PowerShell,输入 aws configure 并回车。
  3. 按照提示,从 Bitwarden 插件点击复制图标,然后在 PowerShell 窗口点击右键粘贴
PS C:\> aws configure
AWS Access Key ID [None]: (粘贴 ID)
AWS Secret Access Key [None]: (粘贴 Secret)
Default region name [None]: us-west-2
Default output format [None]: json

4. 如何验证配置是否成功?

在 PowerShell 中运行以下命令,如果能返回你的 Account ID 和 IAM 用户 ARN,说明配置已生效:

aws sts get-caller-identity

🛡️ 进阶:安全与轮换策略

AWS 官方建议每 90 天轮换一次密钥。但在实际操作中,如果你追求实用主义,可以参考以下策略:

  • 定期体检: 运行 aws iam list-access-keys 查看密钥创建时间,心里有数。
  • 安全存储: 只要密钥保存在 Bitwarden 而不是代码里,安全性已跑赢 90% 的开发者。
  • 更高追求: 长期建议转向 AWS IAM Identity Center (SSO),利用短期令牌彻底消除明文隐患。

⚠️ 最后的安全清理

确认 Bitwarden 记录无误后,请务必执行:

  • 删除 CSV 文件: 彻底删除下载的 new_user_credentials.csv
  • 清空回收站: 确保明文副本不被留存。

🌟 最终建议:实用主义安全观

❌ 避坑:

别把密钥留在下载文件夹里,别把密钥写在代码注释里。

✅ 稳妥:

密钥锁进 Bitwarden,本地即用即配,简单、稳健、可控。

"最好的安全习惯不是追求最复杂的架构,而是选择一个你能持之以恒坚持下去的简单流程。"
加拿大的技术宅,追求极致的简洁与安全。

No comments:

Post a Comment