zoe icon indicating copy to clipboard operation
zoe copied to clipboard

IAM support for Amazon Managed Streaming for Kafka (MSK)

Open LouisVN opened this issue 3 months ago • 0 comments

Amazon Managed Streaming for Kafka service (MSK) allows a new simple authentication and security layer (SASL) mechanism called AWS_MSK_IAM: https://docs.aws.amazon.com/msk/latest/developerguide/iam-access-control.html

In order to enable support, we simply need as dependency the related library for IAM authentication. This should allow configuring Kafka properties to bind the related SASL client implementation:

# Sets up TLS for encryption and SASL for authN.
security.protocol = SASL_SSL

# Identifies the SASL mechanism to use.
sasl.mechanism = AWS_MSK_IAM

# Binds SASL client implementation.
sasl.jaas.config = software.amazon.msk.auth.iam.IAMLoginModule required;

# Encapsulates constructing a SigV4 signature based on extracted credentials.
# The SASL client bound by "sasl.jaas.config" invokes this class.
sasl.client.callback.handler.class = software.amazon.msk.auth.iam.IAMClientCallbackHandler

For more, see https://github.com/aws/aws-msk-iam-auth

LouisVN avatar Oct 28 '24 17:10 LouisVN