0Pricing
Serverless Backend with AWS Lambda & API Gateway · Leçon

Protéger les secrets avec AWS Secrets Manager

Cessez d’inscrire les identifiants en dur dans Lambda. Découvrez comment stocker, renouveler et récupérer en toute sécurité des clés d’API et des mots de passe de bases de données avec AWS Secrets Manager.

Protéger les secrets avec AWS Secrets Manager est une leçon Serverless Backend with AWS Lambda & API Gateway gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Serverless Backend with AWS Lambda & API Gateway, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Serverless Backend with AWS Lambda & API Gateway comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

Why Not Hardcode Secrets?

Embedding API keys or DB passwords in your Lambda code or environment variables is risky: anyone with read access can see them, and rotating them means a redeploy.

AWS Secrets Manager centralizes secrets, encrypts them, and supports automatic rotation.

What Secrets Manager Stores

Common secrets include:

  • Database credentials
  • Third-party API keys
  • OAuth tokens
  • Encryption keys

Each secret is encrypted at rest with AWS KMS.

Creating a Secret

Secrets are stored as key/value JSON. You can create one from the CLI.

aws secretsmanager create-secret \
  --name prod/db/credentials \
  --secret-string '{"username":"admin","password":"S3cr3t!"}'

Granting Lambda Access

Your Lambda execution role needs permission to read the secret. Scope it to the exact ARN, not a wildcard.

{
  "Effect": "Allow",
  "Action": "secretsmanager:GetSecretValue",
  "Resource": "arn:aws:secretsmanager:us-east-1:123:secret:prod/db/credentials-*"
}

Retrieving a Secret in Code

Use the AWS SDK to fetch the secret value at runtime.

const { SecretsManager } = require("@aws-sdk/client-secrets-manager");
const sm = new SecretsManager();
const res = await sm.getSecretValue({ SecretId: "prod/db/credentials" });
const creds = JSON.parse(res.SecretString);

Caching Secrets

Calling Secrets Manager on every invocation adds latency and cost. Fetch once outside the handler so the value is reused across warm invocations.

let cached;
async function getCreds() {
  if (!cached) {
    const r = await sm.getSecretValue({ SecretId: "prod/db/credentials" });
    cached = JSON.parse(r.SecretString);
  }
  return cached;
}

Automatic Rotation

Secrets Manager can rotate credentials on a schedule using a rotation Lambda. For supported databases (RDS), AWS provides a ready-made rotation function so passwords change without code edits.

Secrets vs Parameter Store

SSM Parameter Store also stores config and SecureString values, and is cheaper. Use Parameter Store for plain config; use Secrets Manager when you need built-in rotation and cross-account sharing.

Encryption with KMS

Every secret is encrypted with a KMS key. Use the default AWS-managed key for simplicity, or a customer-managed key (CMK) for fine-grained access control and audit.

Auditing Access

Every GetSecretValue call is logged to CloudTrail. Review these logs to detect unexpected access and prove compliance.

Best Practices

Keep secrets safe:

  • Never log the secret value
  • Scope IAM to the exact secret ARN
  • Enable rotation for long-lived credentials
  • Cache across warm invocations, not in source control

Quick Check

Test your Secrets Manager knowledge.

Recap

You learned to secure credentials:

  • Store secrets in Secrets Manager, never in code
  • Grant least-privilege IAM to the exact ARN
  • Fetch with the SDK and cache across warm invocations
  • Enable automatic rotation and audit via CloudTrail

Questions Fréquemment Posées

La leçon « Protéger les secrets avec AWS Secrets Manager » est-elle gratuite ?

Oui — le texte complet de « Protéger les secrets avec AWS Secrets Manager » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Serverless Backend with AWS Lambda & API Gateway, passe à CoddyKit PRO. Le cours Serverless Backend with AWS Lambda & API Gateway comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Protéger les secrets avec AWS Secrets Manager » ?

Cessez d’inscrire les identifiants en dur dans Lambda. Découvrez comment stocker, renouveler et récupérer en toute sécurité des clés d’API et des mots de passe de bases de données avec AWS Secrets Ma… Tu pratiques Serverless Backend with AWS Lambda & API Gateway avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Serverless Backend with AWS Lambda & API Gateway ?

Aucune expérience préalable n'est requise. Serverless Backend with AWS Lambda & API Gateway sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Protéger les secrets avec AWS Secrets Manager » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Serverless Backend with AWS Lambda & API Gateway ?

Oui. Chaque leçon Serverless Backend with AWS Lambda & API Gateway inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Rôles et autorisations IAM
  2. Autoriseurs d’API Gateway
  3. Sécuriser Lambda avec un VPC
  4. Protéger les secrets avec AWS Secrets Manager
← Retour à Serverless Backend with AWS Lambda & API Gateway