Code Monkey home page Code Monkey logo

sasl-scram-secrets-manager-client-for-msk's Introduction

This is a library intended to be used with Apache Kafka producers and consumers against an Amazon MSK Apache Kafka cluster utilizing SASL/SCRAM authentication, and administrative applications that manage secrets for SASL/SCRAM authentication. As explained in the Amazon MSK documentation, Amazon MSK support for SASL/SCRAM authentication uses AWS Secrets Manager to store usernames and passwords in secrets in AWS Secrets Manager and provides the ability to secure those secrets by encrypting them with Customer Master Keys (CMKs) from AWS Key Management Service (KMS) and attaching a Resource Policy to control who has access to the secret.

For Apache Kafka producers and consumers to be able use the library to read the secrets from AWS Secrets Manager and configure the SASL/SCRAM properties, just the getSecretsManagerClient and the getSecret methods need to be used. All other methods are for managing secrets. Here is an example of code required to get a secret for Amazon MSK from AWS Secrets Manager that could be used in a producer or consumer.

String secretNamePrefix = "AmazonMSK_";
String saslscramUser = "nancy";
String region = "us-east-1"
String secret = Secrets.getSecret(secretNamePrefix + saslscramUser, Secrets.getSecretsManagerClient(region));

Install

Install the jar file.

mvn clean install -f pom.xml

sasl-scram-secrets-manager-client-for-msk's People

Contributors

amazon-auto avatar rcchakr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.