在将运动流作为AWS中的主要内容时,应使用哪些主体?具体来说,我想在云形式中编写AWS::Lambda::Permission
资源:lambda将由kinesis流触发。文档需要本金
这些都不适合我:
-
kinesis.amazonaws.com
-
kinesisstream.amazonaws.com
-
kinesisstreams.amazonaws.com
-
kinesis-stream.amazonaws.com
我没有找到任何文档,这些文档将服务映射到本金。我找到了此页面,其中显示了运动式分析的主要内容是kinesisanalytics.amazonaws.com
。
我查看了AWS服务名称空间页面,但没有任何有关校长的信息。流的名称空间似乎只是kinesis
,但这对我不起作用,如上所述。
正确的是kinesanalytics.amazonaws.com
但是,让我假设您想触发lambda,一旦将新记录放入运动台上,那么您需要的一切都是:
-
使用以下假设角色策略创建IAM角色:
{ "Version": "2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Principal": { "Service": "lambda.amazonaws.com" }, "Effect": "Allow" } ] }
-
创建一个IAM角色策略"要附加到步骤1中创建的角色":
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:{aws_region}:{account_id}:*:*", "Effect": "Allow" }, { "Effect": "Allow", "Action": [ "kinesis:GetRecords", "kinesis:GetShardIterator", "kinesis:DescribeStream", "kinesis:ListStreams" ], "Resource": "arn:aws:kinesis:{aws_region}:{account_id}:stream/{kinesis_stream_name}" }] }
-
从步骤1附加IAM角色到lambda函数
-
do lambda事件源映射"添加触发器",带有以下属性:
batch_size = 100 起始位置="最新" 启用= true