ACME with Redis storage and AWS ElastiCache instance auth

Configure the ACME plugin with Redis as a storage backend using AWS ElastiCache instance auth

Prerequisites

  • A public IP and a resolvable DNS

  • Kong Gateway accepts proxy traffic on port 80

  • A running Redis instance on an AWS ElastiCache instance for Valkey 7.2 or later or ElastiCache for Redis OSS version 7.0 or later

  • The ElastiCache user needs to set “Authentication mode” to “IAM”

  • The following policy assigned to the IAM user/IAM role that is used to connect to the ElastiCache:

    {
      "Version": "2012-10-17",
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "elasticache:Connect"
              ],
              "Resource": [
                  "arn:aws:elasticache:ARN_OF_THE_ELASTICACHE",
                  "arn:aws:elasticache:ARN_OF_THE_ELASTICACHE_USER"
              ]
          }
      ]
    }
    

Environment variables

  • EMAIL: The account identifier.

  • KEY_ID: The kid of a Key.

  • KEY_SET: The name of a Key Set to associate the Key ID with.

  • DOMAIN: An array of strings representing hosts.

  • INSTANCE_ADDRESS: The ElastiCache instance address.

  • INSTANCE_USERNAME: The ElastiCache username with IAM Auth mode configured.

  • AWS_CACHE_NAME: Name of your AWS ElastiCache instance.

  • AWS_REGION: Your AWS ElastiCache instance region.

  • AWS_ACCESS_KEY_ID: (Optional) Your AWS access key ID.

  • AWS_ACCESS_SECRET_KEY: (Optional) Your AWS secret access key.

Set up the plugin

Something wrong?

Help us make these docs great!

Kong Developer docs are open source. If you find these useful and want to make them better, contribute today!