我有一个写入运动流的 lambda 函数。但是现在,我想写入属于不同 AWS 账户的 kinesis 流。假设我拥有所有必要的跨帐户权限,如何将数据发送到此流?调用 kinesis 构造函数或 putRecord 函数时应该如何更改参数?
最佳答案
上面有一种方法在技术上是可行的,但是硬编码凭证甚至将凭证配置到 lambda 中对我来说似乎有点无关紧要,因为 lambda 本身要求您有一个角色。您需要做的是创建一个跨账户信任并使用 sts 承担角色。
使用 kinesis 流在帐户中创建一个角色,并将其设置为信任您的 lambda 角色。
为该角色提供一个策略,允许其放入 kinesis 流。
在您的 lambda 代码中,使用 sts 在具有 kinesis 流的帐户中创建 session 并放置您的记录。
请注意,您的 lambda 将需要一个允许它进入第二个帐户角色的策略。
这里描述得更清楚一点 Providing Access to Accounts you Own
关于amazon-web-services - 使用 lambda 函数将数据发送到 Kinesis 流(在不同的 AWS 账户中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44694309/