Java 如何在spring cloud stream binder中使用STSAssumeRoleSessionCredentialsProvider进行配置

Java 如何在spring cloud stream binder中使用STSAssumeRoleSessionCredentialsProvider进行配置,java,spring-boot,spring-cloud-stream,amazon-kinesis,Java,Spring Boot,Spring Cloud Stream,Amazon Kinesis,我使用的是SpringCloudStream活页夹kinesis,版本:2.0.2.RELEASE 我能够使用KinesisBinderConfiguration中提到的默认ContextCredentialsAutoConfiguration成功地使用binder并在本地访问它 现在我知道这个设置对我不起作用,因为, Kinesis数据流位于AWS帐户1中 该服务正在AWS帐户2中运行 (我已经完成了假定角色的设置,以便帐户2可以使用假定角色访问帐户1中的流) 但是,我不确定如何覆盖binde

我使用的是SpringCloudStream活页夹kinesis,版本:2.0.2.RELEASE

我能够使用KinesisBinderConfiguration中提到的默认ContextCredentialsAutoConfiguration成功地使用binder并在本地访问它

现在我知道这个设置对我不起作用,因为, Kinesis数据流位于AWS帐户1中 该服务正在AWS帐户2中运行 (我已经完成了假定角色的设置,以便帐户2可以使用假定角色访问帐户1中的流)

但是,我不确定如何覆盖binder中的凭据以使用STSAssumeRoleSessionCredentialsProvider


有人能帮忙吗?

KinesisBinderConfiguration完全基于Spring Cloud AWS的自动配置,它为我们提供了一个
ContextCredentialsAutoConfiguration
并在
credentialsProvider
名称下公开一个
AWSCredentialsProvider
bean(如果尚未出现)


因此,您可能只需要将您的
stsassumerolessessioncredentialsprovider
作为配置类中的一个bean,并为其提供
credentialsProvider
bean名称。

谢谢!通过添加以下bean使其正常工作:
@bean@Primary public AWSCredentialsProvider AWSCredentialsProvider(){返回新的STSAssumeRoleSessionCredentialsProvider.Builder(roleArn,roleSession.build();}