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

Graylog CloudWatch/Kinesis输入配置失败:IAM权限问题求助

解决Graylog CloudWatch/Kinesis输入配置失败问题

核心排查与修复步骤

  • 确认EC2实例关联的IAM角色权限
    你的EC2实例必须绑定具备权限的IAM角色(而非仅依赖SSM角色):

    1. 进入EC2控制台,找到目标t3.large实例
    2. 切换到「安全」标签,查看实例关联的IAM角色
    3. 确保该角色已附加你提供的Graylog策略,且信任关系允许ec2.amazonaws.com作为主体
  • 修正Graylog-Cloudwatch_role的信任策略
    该角色必须允许EC2实例的IAM角色进行Assume操作,示例信任策略:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::你的AWS账号ID:role/EC2实例绑定的IAM角色名"
          },
          "Action": "sts:AssumeRole"
        }
      ]
    }
    
  • 验证权限链有效性
    在EC2实例上通过Session Manager执行AWS CLI命令,测试角色切换:

    aws sts assume-role --role-arn arn:aws:iam::你的AWS账号ID:role/Graylog-Cloudwatch_role --role-session-name test-graylog-session
    

    若命令报错,根据提示补全缺失的权限(比如sts:AssumeRole)

  • 修复Graylog输入页面角色不更新问题

    • 配置输入时,确保选择的是Graylog-Cloudwatch_role的完整ARN
    • 若选择后角色显示无变化,清除浏览器缓存或使用无痕模式重新配置
  • 精简权限(可选)
    原策略包含大量创建类权限(如iam:CreateRole),仅读取数据时可精简为:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "GraylogKinesisCloudWatchReadOnly",
          "Effect": "Allow",
          "Action": [
            "kinesis:GetRecords",
            "kinesis:GetShardIterator",
            "kinesis:ListShards",
            "kinesis:ListStreams",
            "kinesis:DescribeStream",
            "logs:DescribeLogGroups",
            "logs:GetLogEvents"
          ],
          "Resource": "*"
        }
      ]
    }
    

关键提醒

  • 区分SSM角色(用于Session Manager连接)和EC2实例IAM角色(用于Graylog调用AWS服务),二者权限用途不同
  • 容器化部署时,确保Graylog容器能访问EC2元数据服务获取IAM凭证

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 18:17:37