You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何成功拉取AWS参数存储中以SecureString加密的Cloudwatch代理配置?

解决CloudWatch Agent拉取加密SSM参数失败的问题

当CloudWatch Agent无法拉取以SecureString存储的SSM参数时,核心原因是EC2实例关联的IAM角色缺少必要权限,以下是具体解决步骤:

1. 配置IAM角色权限

确保EC2实例的IAM角色同时拥有SSM参数读取权限和对应KMS密钥的解密权限,示例策略如下:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ssm:GetParameter",
            "Resource": "arn:aws:ssm:<你的AWS区域>:<你的AWS账号ID>:parameter:<你的参数名称>"
        },
        {
            "Effect": "Allow",
            "Action": "kms:Decrypt",
            "Resource": "arn:aws:kms:<你的AWS区域>:<你的AWS账号ID>:key:<加密参数使用的KMS密钥ID>"
        }
    ]
}
  • 替换占位符为实际的区域、账号ID、参数名称和KMS密钥ID
  • 如果参数是分层路径(如/cloudwatch/agent/config),Resource需填写完整的参数ARN

2. 验证KMS密钥配置

  • 若使用客户管理CMK:确认该密钥的密钥策略已允许上述IAM角色执行kms:Decrypt操作
  • 若使用AWS管理密钥:默认情况下同账号的EC2实例角色可解密,若有自定义限制需调整密钥策略

3. 测试与排查

  • 保持原启动命令不变:
    sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c ssm:<parameter-store-name>
    
  • 权限生效可能需要几分钟,若仍失败可查看Agent日志定位问题:
    cat /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log
    

内容的提问来源于stack exchange,提问作者Gouthami Devale

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 21:48:27