AWS SSM

Configure credentials, IAM permissions, and a test parameter for AWS SSM Parameter Store.

AWS setup

Everything you need to use Envilder with AWS SSM Parameter Store.

1. Configure credentials

Envilder uses your AWS CLI credentials. Set up the default profile:

aws configure

Or use a named profile for multi-account setups:

aws configure --profile dev-account

2. Grant IAM permissions

Your IAM user or role needs access to SSM parameters:

OperationPermission
Pullssm:GetParameter
Pushssm:PutParameter

Example IAM policy (scope to your path prefix):

{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Allow",
    "Action": ["ssm:GetParameter", "ssm:PutParameter"],
    "Resource": "arn:aws:ssm:us-east-1:123456789012:parameter/myapp/*"
  }]
}

3. Create a test parameter and verify

Create a parameter in SSM, then pull it with Envilder to confirm everything works:

# 1. Create a test parameter
aws ssm put-parameter --name "/test/hello" --value "world" --type SecureString --overwrite

# 2. Create a minimal map file
echo '{ "HELLO": "/test/hello" }' > test-map.json

# 3. Pull with Envilder
envilder --map=test-map.json --envfile=.env

If you see ✔ Fetched, your AWS setup is complete.

Or load secrets directly from your app with the Python SDK:

from envilder import Envilder

secrets = Envilder.load("test-map.json")
print(secrets["HELLO"])  # world