Skip to content

Instantly share code, notes, and snippets.

@ruanbekker
Created January 31, 2018 14:38
Show Gist options
  • Save ruanbekker/60a5ee90fb6442aea68cf0db088c1eb7 to your computer and use it in GitHub Desktop.
Save ruanbekker/60a5ee90fb6442aea68cf0db088c1eb7 to your computer and use it in GitHub Desktop.
Getting Secrets from SSM using GetParameters Example

Example with SSM to get Parameter Values using GetParameters:

Setting Environment Variables:

$ export MYSQL_HOSTNAME="/test/ruan/mysql/db01/mysql_hostname"
$ export MYSQL_USERNAME="/test/ruan/mysql/db01/mysql_user"

The Python Script:

import os
import boto3

session = boto3.Session(region_name='eu-west-1')
ssm = session.client('ssm')

MYSQL_HOSTNAME = os.environ.get('MYSQL_HOSTNAME')
MYSQL_USERNAME = os.environ.get('MYSQL_USERNAME')

response = ssm.get_parameters(Names=[MYSQL_HOSTNAME, MYSQL_USERNAME], WithDecryption=True)

for secrets in response['Parameters']:
    if secrets['Name'] == MYSQL_HOSTNAME:
        print("Hostname: {}".format(secrets['Value']))
    if secrets['Name'] == MYSQL_USERNAME:
        print("Username: {}".format(secrets['Value']))

Running the script:

$ python app.py
Hostname: db01.eu-west-1.mycompany.com
Username: super_dba
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment