简体   繁体   English

发送数据到 AWS Kinesis stream 与 Lambda 跨账户

[英]Sending data to AWS Kinesis stream cross-accounts with Lambda

I'm trying to send data to a Kinesis stream from 1 AWS account to another account with Lambda. I tried to use assume-role and my code is:我正在尝试将数据从 1 个 AWS 账户发送到 Kinesis stream 到另一个账户 Lambda。我尝试使用 assume-role,我的代码是:

        assumed_role_object = self.sts_client.assume_role(
        RoleArn="arn:aws:iam::XXXXXXXXXXX:role/cross-account-access",
        RoleSessionName="AssumeRoleSession"
    )

    credentials = assumed_role_object['Credentials']

    kinesis_resource = boto3.resource(
        'kinesis',
        aws_access_key_id=credentials['AccessKeyId'],
        aws_secret_access_key=credentials['SecretAccessKey'],
        aws_session_token=credentials['SessionToken'],
    )
    kinesis_resource.put_record(StreamName='StreamName',
                                     Data=encoded,
                                     PartitionKey=partition_key,
                                     ExplicitHashKey='string',
                                     SequenceNumberForOrdering='string'
                                     )

and I get this error:我得到这个错误:

ResourceNotExistsError: The 'kinesis' resource does not exist. ResourceNotExistsError:“运动”资源不存在。 The available resources are:可用的资源是:

  • cloudformation云形成
  • cloudwatch云表
  • dynamodb动态模块
  • ec2 EC2
  • glacier冰川
  • iam我是
  • opsworks操作系统
  • s3 s3
  • sns社交网络
  • sqs平方米

So I understand that sts does not support kinesis .所以我明白sts不支持kinesis Someone knows a way to send data to kinesis cross-account?有人知道将数据发送到kinesis跨帐户的方法吗?

This aws document can be referred which demonstrated cross account application writing to kinesis data stream using kinesis client library (java/python) - https://aws.amazon.com/blogs/architecture/field-notes-how-to-enable-cross-account-access-for-amazon-kinesis-data-streams-using-kinesis-client-library-2-x/可以参考此 aws 文档,它演示了使用 kinesis 客户端库 (java/python) 跨帐户应用程序写入 kinesis 数据 stream - https://aws.amazon.com/blogs/architecture/field-notes-how-to-enable-跨账户访问-for-amazon-kinesis-data-streams-using-kinesis-client-library-2-x/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 AWS Kinesis Data Firehose 和 Lambda - AWS Kinesis Data Firehose and Lambda 从数据 stream (Kinesis) 到 OpenSearch AWS 创建交付 stream (Firehose) - Create delivery stream (Firehose) from data stream (Kinesis) to OpenSearch AWS 从 fluentd 发送到 aws kinesis firehose 时数据丢失 - data loss while sending from fluentd to aws kinesis firehose Amazon Kinesis 和 AWS Lambda 重试 - Amazon Kinesis & AWS Lambda Retries AWS CDK 向 Kinesis Data Stream 的 AWS 托管 CMK 授予解密权限 - AWS CDK grant decrypt permission to Kinesis Data Stream's AWS managed CMK AWS xray 集成 lambda 和 kinesis 集成 - Aws xray integration with lambda and kinesis integration AWS Kinesis,并发 Lambda 处理,保证顺序 - AWS Kinesis, concurrent Lambda processing with a guaranteed ordering 改变 aws lambda 运动的消费者批量大小是否会导致数据丢失或重复 - Does changing aws lambda consumer batch size of kinesis cause data loss or duplication 来自 2 个不同 AWS 账户的交叉堆栈引用 - Cross stack reference from 2 different AWS accounts 如何在不通过 Kinesis Data 的情况下直接将 KPL(Kinesis Producer Library)集成到 Kinesis firehose Stream - How to integrate KPL (Kinesis Producer Library) to Kinesis firehose directly without going through Kinesis Data Stream
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM