Amazon DVA-C02: Amazon API Gateway & Applicatie-integratie — Studiegids
Onderdeel van de AWS Developer Associate DVA-C02 — Studiegids. Oefen met geverifieerde antwoorden in het Amazon-examencentrum, of doe getimede oefentests op ExamRoll.io.
API’s ontwerpen met API Gateway (REST, HTTP, WebSocket) en integraties
Het ontwerp begint met het kiezen van de juiste API-variant: REST API’s (API Gateway REST) bieden fijnmazige features op stage-niveau, zoals caching per stage en geavanceerde mapping templates; HTTP API’s (API Gateway v2) bieden lagere latency en lagere kosten voor veelgebruikte proxy-patronen en native JWT/OIDC authorizers; WebSocket API’s bieden persistente client-server kanalen met route keys ($connect, $disconnect, $default) en vereisen de API Gateway Management API (PostToConnection) om berichten te versturen. Ontwerp integraties door de voorkeur te geven aan AWS_PROXY/Lambda proxy voor eenvoudige request/response (gebruik
undefined
of voor v2 gebruik
undefined
op
undefined
), en kies HTTP of VPC Link voor private HTTP-backends. Gebruik voor backends met hoge doorvoersnelheid NLB + VPC Link. Mock-integraties (
undefined
) en integration response templates stellen frontend-teams in staat te beginnen zonder dat de backend gereed is. Wanneer je API’s voorziet van een CloudFront-distributie, gebruik dan regionale API-eindpunten als origins en stel de Origin Protocol Policy in op HTTPS-only; edge-optimized REST API’s bevinden zich al achter CloudFront. Veelvoorkomende valkuilen zijn niet-overeenkomende payload format versions tussen de API en Lambda (v1.0 vs 2.0), vergeten om apigateway.amazonaws.com permissie te geven om Lambda aan te roepen (voeg permissie toe met
undefined
), en CORS-misconfiguraties die browsers blokkeren.
Beveiligings- en autorisatiepatronen (Cognito, IAM, custom authorizers)
Beveiligingspatronen moeten aansluiten bij de client-types en toegangsmodellen: gebruik Amazon Cognito User Pools of een externe OIDC-provider en koppel deze als JWT authorizers voor HTTP API’s (
undefined
in
undefined
met
undefined
ingesteld op
undefined
), of gebruik REST API Cognito Authorizers voor sessiegebaseerde gebruikerstoegang. Geef voor service-to-service of admin-API’s de voorkeur aan IAM-autorisatie (SigV4) en IAM resource policies met een strikte scope op stages en methods. Lambda (custom) authorizers bieden maximale flexibiliteit om op maat gemaakte authenticatieregels te implementeren, maar onthoud dat ze latency en faalscenario’s toevoegen — cache de responses van de authorizer met een TTL om cold starts te verminderen en te voorkomen dat errors een 500-status teruggeven aan clients. Bescherm tegen misbruik met usage plans en API keys (
undefined
en
undefined
) in combinatie met throttling quota’s. Zorg voor de juiste IAM-permissies: geef API Gateway permissie om Lambda aan te roepen (
undefined
) en beperk Lambda execution roles tot het ’least privilege’-principe. Valkuilen voor ontwikkelaars zijn onder meer het vergeten om token-extractie in te schakelen voor JWT authorizers, timeouts van de authorizer die de algehele API-latency beïnvloeden, en het doorsturen van headers/cookies door CloudFront, wat onbedoeld caches kan omzeilen of gebruikersdata kan lekken.
Stagebeheer, versionering, caching en canary deployments
Behandel stages als onafhankelijke runtime-omgevingen: deployments zijn snapshots (
undefined
of
undefined
), en stages verwijzen naar die snapshots. Gebruik stage variables of, bij voorkeur, Lambda aliases om verkeer tussen versies te routeren; wissel aliases atomisch (
undefined
) of gebruik API Gateway stage canary settings voor een geleidelijke uitrol. Voor REST API’s, schakel caching in op de stage (
undefined
met
undefined
om
undefined
en
undefined
in te stellen) en beheer de TTL- en cache key-parameters in de method-instellingen; HTTP API’s hebben momenteel geen ingebouwde caching, dus gebruik CloudFront of caches op applicatieniveau. Leeg de cache bij een deploy of wanneer onderliggende data verandert; enkel vertrouwen op de TTL kan verouderde data retourneren. Versioneringspatronen: gebruik semantische API-versionering in het pad (/v1/…) of vertrouw op staged deployments voor blue/green-flows. Veelvoorkomende valkuilen zijn de aanname dat stage variables veilig zijn (ze zijn zichtbaar voor ontwikkelaars met console-toegang), het verkeerd configureren van cache keys (vergeten de authorization header of query params op te nemen), en het niet coördineren van de deployment van schemawijzigingen met de compatibiliteit van de client.
← Serverless · Alle domeinen · Amazon DynamoDB →
Oefen deze vragen → · Getimede oefening op ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Slaag voor je examen →