日志发送至 Firehose - Amazon CloudWatch 日志

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

日志发送至 Firehose

当前一部分的表中列出的日志类型发送到 Firehose 时,本部分适用:

用户权限

若要能够设置首次将这些类型日志中的任一种日志发送到 Firehose,您必须登录具有以下权限的账户。

  • logs:CreateLogDelivery

  • firehose:TagDeliveryStream

  • iam:CreateServiceLinkedRole

如果其中任何一种日志已被发送到 Firehose,要设置将其中另一种日志也发送到 Firehose,您只需要 logs:CreateLogDeliveryfirehose:TagDeliveryStream 权限。

用于权限的 IAM 角色

由于 Firehose 不使用资源策略, AWS 因此在设置要发送到 Firehose 的日志时会使用 IAM 角色。 AWS 创建名AWSServiceRoleForLogDelivery为的服务相关角色。此服务相关角色包括以下权限。

JSON
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "firehose:PutRecord", "firehose:PutRecordBatch", "firehose:ListTagsForDeliveryStream" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/LogDeliveryEnabled": "true" } }, "Effect": "Allow" } ] }

此服务相关角色授予标签设置为的所有 Firehose 传送流LogDeliveryEnabled的权限。true AWS 在设置日志记录时,将此标签提供给目标传送流。

此服务相关角色还具有允许 delivery.logs.amazonaws.com 服务委托人来代入所需服务相关角色的信任策略。该信任策略如下所示:

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }