Skip to content
The AWS Secrets Manager Java caching client enables in-process caching of secrets for Java applications.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Creating initial file from template Oct 22, 2018
config/checkstyle Added cache Nov 9, 2018
src add test for cached version update Jan 7, 2019
.gitignore Added cache Nov 9, 2018
CODE_OF_CONDUCT.md Creating initial file from template Oct 22, 2018
CONTRIBUTING.md
LICENSE
NOTICE Creating initial file from template Oct 22, 2018
README.md README update Nov 9, 2018
pom.xml Adding publishing profile to pom.xml Nov 16, 2018

README.md

AWS Secrets Manager Java caching client

The AWS Secrets Manager Java caching client enables in-process caching of secrets for Java applications.

Getting Started

Required Prerequisites

To use this client you must have:

  • A Java 8 development environment

    If you do not have one, go to Java SE Downloads on the Oracle website, then download and install the Java SE Development Kit (JDK). Java 8 or higher is recommended.

An Amazon Web Services (AWS) account to access secrets stored in AWS Secrets Manager and use AWS SDK for Java.

  • To create an AWS account, go to Sign In or Create an AWS Account and then choose I am a new user. Follow the instructions to create an AWS account.

  • To create a secret in AWS Secrets Manager, go to Creating Secrets and follow the instructions on that page.

  • To download and install the AWS SDK for Java, go to Installing the AWS SDK for Java in the AWS SDK for Java documentation and then follow the instructions on that page.

Download

You can get the latest release from Maven:

<dependency>
  <groupId>com.amazonaws.secretsmanager</groupId>
  <artifactId>aws-secretsmanager-caching-java</artifactId>
  <version>1.0.0</version>
</dependency>

Don't forget to enable the download of snapshot jars from Maven:

<profiles>
  <profile>
    <id>allow-snapshots</id>
    <activation><activeByDefault>true</activeByDefault></activation>
    <repositories>
      <repository>
        <id>snapshots-repo</id>
        <url>https://oss.sonatype.org/content/repositories/snapshots</url>
        <releases><enabled>false</enabled></releases>
        <snapshots><enabled>true</enabled></snapshots>
      </repository>
    </repositories>
  </profile>
</profiles>

Get Started

The following code sample demonstrates how to get started:

  1. Instantiate the caching client.
  2. Request secret.
// This example shows how an AWS Lambda function can be written
// to retrieve a cached secret from AWS Secrets Manager caching
// client.
package com.amazonaws.secretsmanager.caching.examples;

import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;
import com.amazonaws.services.lambda.runtime.LambdaLogger;

import com.amazonaws.secretsmanager.caching.SecretCache;

/**
 * SampleClass.
 */
public class SampleClass implements RequestHandler<String, String> {

    private final SecretCache cache = new SecretCache();

    @Override
    public String handleRequest(String secretId, Context context) {
        final String secret = cache.getSecretString(secretId);
        // Use secret to connect to secured resource.
        return "Success!";
    }
}

License

This library is licensed under the Apache 2.0 License.

You can’t perform that action at this time.