【问题标题】:AWS configure cloud watch/trail to monitor for 'AccessDenied' and 'UnauthorizedOperation' errorsAWS 配置云监视/跟踪以监控“AccessDenied”和“UnauthorizedOperation”错误
【发布时间】:2021-08-17 17:12:30
【问题描述】:

我想设置一些监控,以在我的 AWS 账户中捕获访问被拒绝和未经授权的操作错误。我想跨不同的 AWS 服务捕获所有这些事件,但遇到了一些问题。我最初设置了一些触发基本 lambda 函数的云监视规则,但我没有捕获我正在寻找的事件。下面是一些触发 Lambda 函数的规则事件(理想情况下,一旦我开始工作,我会从捕获所有事件中过滤掉这些事件)。

{
  "source": ["aws.cloudtrail"],
  "detail-type": ["AWS API Call via CloudTrail"],
  "detail": {
    "eventSource": ["cloudtrail.amazonaws.com"]
  }
}
// All cloud watch
{
  "source": [
    "aws.cloudwatch"
  ]
 }

我一直在使用 AWS CLI 进行测试,调用我也无权访问的资源,例如:

  • aws dynamodb 列表表
  • aws ec2 描述实例
  • 列表项

我从 CLI 得到正确的错误响应,但我没有看到这些事件被传播到 Lambda(虽然我看到其他非错误触发 Lambda)。

我是否必须更严格地配置它,还是我错过了收集这些错误的步骤?

感谢您的帮助

【问题讨论】:

    标签: amazon-web-services amazon-cloudwatch amazon-cloudtrail


    【解决方案1】:

    aws dynamodb list-tablesaws ec2 describe-instancesList item 不起作用,因为 CloudWatch Events不支持List*Get*Describe* API 事件:

    如果您想捕获此类事件,则必须通过 CloudWatch Logs 进行。即,设置您的CT trail to push events to CloudWatch Logs。然后,为您的 lambda 设置一个 subscription filter。这将通过 CloudWatch Logs 将所有 API 事件推送到您的 lambda。随后,您将能够检测事件中的AccessDenied 错误并执行您需要的其他操作。

    其他可能性是在日志上设置metric filter,以便捕获AccessDenied 错误以创建 CloudWatch 指标。然后,您根据指标设置 CloudWatch 警报。这将触发警报,但不会将触发警报的事件的详细信息传递给您的函数。您只会知道发生了拒绝访问,但没有更多详细信息。

    更新

    create-table 按预期工作。我在测试中使用了以下规则,并连接到 SQS 以进行快速检查:

    {
      "detail-type": [
        "AWS API Call via CloudTrail"
      ],
      "detail": {
        "eventSource": [
          "dynamodb.amazonaws.com"
        ],
        "errorCode": [
          "AccessDenied"
        ]
      }
    }
    

    【讨论】:

    • 感谢@Marcin 的详细回复!我没有意识到 Cloudwatch 事件的这种限制。我确实尝试使用另一个 api 调用“aws dynamodb create-table”并且得到了类似的结果,但我倾向于我的设置可能有问题。您是否知道是否有任何其他限制,或者“创建”是否不符合“写入”API 调用的条件?
    • @MattLock 没问题。我更新了答案。创建表适用于事件。
    • @MattLock 谢谢。这只会将您的规则限制为 cloudtrial API 事件,而不是其他服务。要将其应用于所有服务,您可以尝试一起删除 eventSource。但我没有测试过。
    • 如果您有兴趣,不幸的是删除 eventSource 不起作用
    • @MattLock 也许this 会有所帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-18
    相关资源
    最近更新 更多