You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Amazon KCL .NET实现跨账号Kinesis增强扇出访问?

amazon-kinesis-client-net跨账号STS角色访问支持说明

amazon-kinesis-client-net支持通过STS角色实现跨账号访问Kinesis增强扇出,具体实现可按以下步骤操作:

  • 获取跨账号STS临时凭证:
    使用AWS STS客户端调用AssumeRole接口获取目标账号角色的临时凭证,将凭证传入Kinesis客户端配置。示例代码:

    var stsClient = new AmazonSecurityTokenServiceClient();
    var assumeRoleReq = new AssumeRoleRequest
    {
        RoleArn = "arn:aws:iam::目标账号ID:role/指定的跨访问角色名",
        RoleSessionName = "kinesis-cross-account-session"
    };
    var assumeRoleResp = await stsClient.AssumeRoleAsync(assumeRoleReq);
    
    var kinesisConfig = new AmazonKinesisConfig
    {
        Credentials = new SessionAWSCredentials(
            assumeRoleResp.Credentials.AccessKeyId,
            assumeRoleResp.Credentials.SecretAccessKey,
            assumeRoleResp.Credentials.SessionToken)
    };
    var kinesisClient = new AmazonKinesisClient(kinesisConfig);
    
  • 同步凭证到Java KCL进程:
    由于amazon-kinesis-client-net依赖Java版KCL处理核心逻辑,需确保Java进程能获取到STS临时凭证。可通过设置环境变量AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_SESSION_TOKEN,Java端会自动读取这些变量使用临时凭证。

  • 配置跨账号权限:

    • 目标账号的Kinesis流需添加权限策略,允许源账号的STS角色执行kinesis:SubscribeToShard、kinesis:DescribeStreamSummary等增强扇出所需操作;
    • 源账号的发起IAM实体需具备sts:AssumeRole权限,允许其获取目标账号的角色凭证。

内容的提问来源于stack exchange,提问作者Praneet Nadkar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 07:10:01