From 5dd65d1c44270f9ad71414d68e5141335c79435a Mon Sep 17 00:00:00 2001 From: Vincent Viloria Date: Tue, 11 Mar 2025 18:00:54 -0700 Subject: [PATCH] revise wording on updating aws credentials --- README.md | 11 +++++++++-- docs/multilang/configuring-credential-providers.md | 7 ++++--- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index c63733e4..6a027afb 100644 --- a/README.md +++ b/README.md @@ -48,9 +48,16 @@ To make it easier for developers to write record processors in other languages, ## Using the KCL The recommended way to use the KCL for Java is to consume it from Maven. -## Must read if you are migrating to a version using KCL 2.7 or later -KCL version 2.7.0 and beyond does not use the AWS SDK v1. Because of this, all multilang users upgrading from a prior version must update their multilang `.properties` AwsCredentialsProvider property to an AWS SDK v2 credential provider name. Please see the credentials provider name mapping [here](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/migration-client-credentials.html#credentials-changes-mapping), and reference our Configuring Credential Providers documentation [here](https://github.com/vincentvilo-aws/amazon-kinesis-client/blob/remove-sdk-v1/docs/multilang/configuring-credential-providers.md). If this is not done, your multilang KCL will fail to construct an AwsCredentialsProvider on startup. +## 🚨Important: Migration to KCL 2.7 or later with MultiLangDaemon - Credential Provider Changes Required +KCL version 2.7.0 and later uses AWS SDK for Java 2.x instead of AWS SDK for Java 1.x. All MultiLangDaemon users +upgrading from earlier versions must update their credential provider configuration in the `.properties` file to use +credentials provider name for AWS SDK for Java 2.x. Failure to do this will cause your multilang KCL application to fail +during startup with credential provider construction errors. Please check the following link for the credentials +provider mapping and MultiLangDaemon credentials provider configuration guide. +- [AWS SDK for Java 1.x to 2.x Credentials Provider Mapping](aws.amazon.com/sdk-for-java/latest/developer-guide/migration-client-credentials.html#credentials-changes-mapping) +- [KCL Multilang Credentials Provider Configuration Guide](https://github.com/aws/amazon-kinesis-client/blob/master/docs/multilang/configuring-credential-providers.md) + ### Version 2.x ``` xml diff --git a/docs/multilang/configuring-credential-providers.md b/docs/multilang/configuring-credential-providers.md index 7363adb8..018d13eb 100644 --- a/docs/multilang/configuring-credential-providers.md +++ b/docs/multilang/configuring-credential-providers.md @@ -6,9 +6,10 @@ KCL multilang does not, and is not intended to, proxy the full breadth of the AW However, KCL now provides better extensibility to handle, and be enhanced to handle, additional configurations. This document should help multilang customers configure a suitable `CredentialProvider` (or contribute changes to support a new use case!). -In KCL versions prior to 2.7, the AWSCredentialsProvider property expected AWS SDK v1 provider names. If you are using -KCL version 2.7 or beyond, ensure that you are passing an AWS SDK v2 credentials provider name to your AwsCredentialsProvider -property. See list of providers [here](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/migration-client-credentials.html#credentials-changes-mapping) and several examples below. +In KCL versions prior to 2.7, the `AWSCredentialsProvider` property used AWS SDK for Java 1.x provider names. +When upgrading to KCL 2.7 or later, you must update to use AWS SDK v2 credentials provider names in your configuration. +For a complete mapping of credential provider names between version 1.x and 2.x, see the [AWS SDK for Java migration guide — Credentials provider changes mapped between versions 1.x and 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/migration-client-credentials.html#credentials-changes-mapping). +You also can refer to the following examples. ## Sample Provider Configuration