Description
I have a Kinesis Stream Reader setup on an EC2 instance with the an instance profile with assume-role permissions to assume a reader-role to a Kinesis Stream in a separate AWS account. I can access the stream perfectly fine if I configure my credentials by using the STS service through the AWS-CLI, retrieve temporary credentials and setup the ~/.aws/credentials file accordingly. But, I'm running into problems if I try to use the STSAssumeRoleSessionCredentialsProvider
in kcl.properties
to automatically refresh the temporary credentials.
The credentials in kcl.properties
is as follows:
AWSCredentialsProvider = STSAssumeRoleSessionCredentialsProvider|arn:aws:iam::<account-id>:role/<role-name>|session-name
But I seem to be running into the following issue.
No credential providers specifiedjava com.amazonaws.services.kinesis.multilang.MultiLangDaemon <properties file>
I'm using the Amazon KCL Version : 1.4.4
with the following JARS:
- amazon-kinesis-client-1.7.5.jar
- aws-java-sdk-cloudwatch-1.11.115.jar
- aws-java-sdk-core-1.11.115.jar
- aws-java-sdk-dynamodb-1.11.115.jar
- aws-java-sdk-kinesis-1.11.115.jar
- aws-java-sdk-kms-1.11.115.jar
- aws-java-sdk-s3-1.11.115.jar
- commons-codec-1.9.jar
- commons-lang-2.6.jar
- commons-logging-1.1.3.jar
- guava-18.0.jar
- httpclient-4.5.2.jar
- httpcore-4.4.4.jar
- ion-java-1.0.2.jar
- jackson-annotations-2.6.0.jar
- jackson-core-2.6.6.jar
- jackson-databind-2.6.6.jar
- jackson-dataformat-cbor-2.6.6.jar
- jmespath-java-1.11.115.jar
- joda-time-2.8.1.jar
- protobuf-java-2.6.1.jar
Any help with respect to missing JARs or configuration specifics would be helpful.