Parcours

AWS pour développeurs : API serverless, conteneurs et sécurité

  • 4 labs
  • 8 h
  • Intermédiaire → Avancé

Ce parcours prépare la certificationAWS Certified Developer - AssociateDVA-C02

Mireille Ekambi a lancé Sawa Express à Douala : des colis livrés à moto entre les quartiers. Tout passe encore par WhatsApp et un tableur, et les clients appellent toute la journée pour savoir où est leur colis. Patrick écrit l'application mobile. L'API, c'est vous qui la construisez, sur AWS. Quatre ateliers suivent l'application : une API HTTP serverless avec AWS Lambda, API Gateway et DynamoDB, la preuve de livraison par photo traitée en asynchrone avec S3, EventBridge et SQS, un service de calcul de tarif conteneurisé avec Docker, Amazon ECR et ECS Fargate, puis une API protégée par Amazon Cognito et des jetons JWT, ses secrets dans Secrets Manager et ses données chiffrées par KMS. Chaque atelier se joue dans une vraie console AWS et dans AWS CloudShell, sans compte AWS à ouvrir ni carte bancaire à donner. Vous écrivez le code, vous le déployez, vous testez l'API comme le fera l'application, et des contrôles vérifient ce que vous avez construit. Chaque atelier se termine par des questions d'examen : le parcours prépare la certification AWS Certified Developer - Associate (DVA-C02). Huit heures de pratique, de l'intermédiaire à l'avancé.

Les étapes

  1. Étape 1
    Général

    AWS Lambda et API Gateway : une API HTTP serverless avec DynamoDB

    Chez Sawa Express, à Douala, le téléphone sonne toute la journée : quarante clients par jour veulent savoir où est leur colis. Patrick termine l'application mobile qui leur permettra de suivre leurs livraisons seuls. Il ne lui manque que l'API, et il la veut pour vendredi. Vous la construisez sur AWS, sans aucun serveur à gérer : une fonction AWS Lambda pour la logique, Amazon API Gateway pour l'adresse publique, Amazon DynamoDB pour les colis. Depuis AWS CloudShell, vous créez la table, déployez la fonction, lui donnez le seul droit qui lui manque, puis exposez trois routes : créer un colis, le suivre, faire avancer sa livraison. Vous testez ensuite l'API comme le fera l'application de Patrick, et vous découvrez ce qu'une première version laisse passer : un colis sans destinataire accepté, un numéro inconnu qui fait planter le serveur. Vous en faites une API qui répond toujours le bon code, 201, 200, 400 ou 404, et qui garde ses erreurs internes pour ses journaux. Premier atelier du parcours AWS pour développeurs, qui prépare la certification AWS Certified Developer - Associate (DVA-C02).

    • Aucun avis
    • Intermédiaire
    • 2 h
    • 1 500 crédits
  2. Étape 2
    Général

    Amazon S3, SQS et EventBridge : traiter les livraisons en asynchrone

    Chez Sawa Express, une cliente jure n'avoir jamais reçu son colis, que le livreur dit avoir remis à son voisin. Personne ne peut rien prouver, et l'entreprise rembourse. Mireille veut une photo à chaque livraison, et un SMS au client dès que son colis est livré, sans que personne au bureau n'appuie sur un bouton. Vous construisez une chaîne qui travaille toute seule, en arrière-plan. L'application du livreur dépose la photo directement dans un bucket Amazon S3 privé, grâce à une URL présignée. S3 déclenche une fonction AWS Lambda qui passe le colis « livré » et publie l'événement sur un bus Amazon EventBridge. Une règle le route vers une file Amazon SQS, d'où une seconde fonction envoie le SMS. En chemin, vous rencontrez ce que l'examen interroge sans cesse : l'événement reçu deux fois, l'événement publié avant que la règle n'existe, le numéro mal saisi qui échoue en boucle. Vous rendez chaque traitement idempotent, et vous isolez les messages en échec dans une file d'échec sans bloquer les autres. Deuxième atelier du parcours AWS pour développeurs, qui prépare la certification AWS Certified Developer - Associate (DVA-C02).

    • Aucun avis
    • Intermédiaire
    • 2 h
    • 2 000 crédits
  3. Étape 3
    Général

    Conteneurs sur AWS : Docker, Amazon ECR et ECS Fargate

    Sawa Express ouvre sa ligne Douala - Yaoundé. Serge, un développeur freelance, a écrit le service qui calcule les tarifs : un petit serveur web en Python qui tourne parfaitement sur son ordinateur portable. Mais Serge est reparti à Bafoussam, et l'application de Patrick a besoin de ce service en ligne, tout le temps. Vous le mettez dans un conteneur, tel quel, sans le réécrire. Depuis AWS CloudShell, vous construisez l'image avec Docker, la publiez dans un dépôt privé Amazon ECR, et la faites tourner sur Amazon ECS avec AWS Fargate, sans aucun serveur à gérer. En chemin, vous tombez sur les deux pannes que rencontre tout développeur qui passe aux conteneurs : un service qui répond sur l'ordinateur mais pas dans le conteneur, et une tâche qui tourne mais que personne ne peut joindre. Puis le prix du carburant augmente : vous le changez par une nouvelle révision de la tâche, déployée sans coupure, sans toucher au code. Troisième atelier du parcours AWS pour développeurs, qui prépare la certification AWS Certified Developer - Associate (DVA-C02).

    • Aucun avis
    • Intermédiaire
    • 2 h
    • 2 000 crédits
  4. Étape 4
    Général

    Sécuriser une API : Amazon Cognito, autorisation JWT, Secrets Manager et KMS

    Un concurrent de Sawa Express publie une capture d'écran : le nom, le téléphone et l'adresse d'un client, lus dans l'API des colis. N'importe qui peut lire n'importe quel colis, et même le marquer livré. Et la clé de l'opérateur SMS est écrite dans le code. Patrick veut que tout soit fermé avant lundi. Vous créez les comptes des clients et des livreurs dans Amazon Cognito, et vous protégez chaque route de l'API par une autorisation JWT d'API Gateway : sans jeton valable, plus rien ne passe. Dans la fonction, vous réservez le changement de statut aux livreurs, en lisant leur groupe dans le jeton. Puis vous rangez la clé SMS dans AWS Secrets Manager, chiffrée par une clé AWS KMS, et vous découvrez les deux droits qu'il faut pour la lire : l'un sur le secret, l'autre sur la clé. Enfin, vous ouvrez l'API au tableau de bord web du bureau, et à lui seul, par CORS. Quatrième atelier du parcours AWS pour développeurs, qui prépare la certification AWS Certified Developer - Associate (DVA-C02).

    • Aucun avis
    • Avancé
    • 2 h
    • 2 500 crédits

AWS, AWS Certified et le badge associé sont des marques d’Amazon.com, Inc. ou de ses filiales. MonPremierLab n’est pas affilié à AWS.