AWS Systems Manager Parameter Store Popular2017年〜
A hierarchical store for securely managing configuration data and secrets
What It Does
AWS Systems Manager Parameter Store securely stores and manages application configuration values, database connection strings, API keys, and more. Parameters can be organized hierarchically, encrypted with KMS, access-controlled via IAM, and change history is tracked.
Use Cases
Managing application environment variables, securely storing database passwords and API keys, injecting configuration values into Lambda functions and ECS tasks, and switching configurations per environment (dev/stg/prod).
Everyday Analogy
Think of a locked filing cabinet. Documents (parameters) are organized by folder (hierarchy), locked (encrypted), and there's a log of who accessed what and when.
What Is Parameter Store?
Parameter Store is a service for centrally managing configuration data and secrets. It separates hardcoded values and secrets from your code for secure management. Parameters are organized with hierarchical paths like `/app/prod/db-password`, and IAM policies can control access at the path level.
Parameter Types
Parameter Store supports three parameter types. String is a plaintext string. StringList is a comma-separated list of strings. SecureString is a KMS-encrypted string used for passwords and API keys. Standard parameters are free (up to 10,000), while Advanced parameters are paid and support TTL (expiration) and parameter policies. For practical tips on using parameter types, technical books on Amazon are a useful resource.
Getting Started
In the Systems Manager console under "Parameter Store," select "Create parameter." Specify the name (hierarchical path), type, and value. Retrieve parameters from Lambda functions or ECS tasks using the AWS SDK's GetParameter API. You can also reference parameters directly from CloudFormation templates using dynamic references ({{resolve:ssm:...}}).
Things to Watch Out For
- Standard parameters are free with a limit of 10,000. This is sufficient for most use cases
- If you need secret rotation, Secrets Manager is more appropriate - Parameter Store lacks rotation capabilities
- KMS charges apply for encrypting/decrypting SecureString parameters