我正在尝试使用 Firehose API (JS) 并且我不断收到以下错误:
我检查了 Angular 色,并设置了自定义策略以包含 STS 和 Firehose 操作的所有资源。如果我允许在 STS 下使用 AssumeRole
,我不知道为什么会出现此错误。
方法调用
我使用的方法是 createDeliveryStream(params = {}, callback)
和 S3DestinationConfiguration
。
策略 JSON
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"iam:*",
"kinesisvideo:*",
"s3:PutAccountPublicAccessBlock",
"s3:GetAccountPublicAccessBlock",
"s3:ListAllMyBuckets",
"s3:*",
"firehose:*",
"sts:*",
"s3:HeadBucket"
],
"Resource": "*"
}
]
}
最佳答案
请检查 IAM Angular 色中定义的信任关系并验证它是否设置为 firehose.amazonaws.com
。信任关系中定义的策略使服务能够承担该 Angular 色。对于 Kinesis Firehose,请参阅 this 文档,其中包含有关 Firehose 的 IAM Angular 色的详细信息。请参阅文档中提及信任策略的“授予 Kinesis Data Firehose 访问 Amazon S3 目标的权限”部分。
关于javascript - Firehose 无法承担 Angular 色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55854421/