Other applications

Other applications, outside of Kafka Connect can also make use of this provider. The providers can be passed a properties file at start up to retrieve secrets. For example in a Kafka Streams application:

val props = Map(
    AWSProviderConfig.AUTH_METHOD -> AuthMode.CREDENTIALS.toString,
    AWSProviderConfig.AWS_ACCESS_KEY -> "somekey",
    AWSProviderConfig.AWS_SECRET_KEY -> "secretkey",
    AWSProviderConfig.AWS_REGION -> "someregion"
).asJava

val config = AWSProviderConfig(props)
val settings = AWSProviderSettings(config)

val data = provider.get(secretName, Set("my-app-secret-key").asJava)

Including in your project 

For Maven:

<dependency>
    <groupId>io.lenses</groupId>
    <artifactId>secret-provider</artifactId>
    <version>LATEST</version>
</dependency>