Een social media-app gebruikt de AWS SDK for JavaScript in de browser om gebruikersreferenties van AWS STS te verkrijgen. App-assets worden opgeslagen in een S3-bucket en geleverd via een CloudFront-distributie met de S3-bucket als oorsprong. Momenteel worden de rolreferenties die de app aanneemt, in platte tekst opgeslagen in een JSON-bestand in de frontend-code. De ontwikkelaar moet hardcoded referenties verwijderen, terwijl de app nog steeds referenties moet kunnen verkrijgen. Welke aanpak voldoet aan deze vereiste?
Kies een antwoord
Tik op een optie om je antwoord te controleren.
Correct antwoord: Voeg een Lambda@Edge-functie toe aan de CloudFront-distributie en roep deze aan bij viewer requests. Geef de uitvoeringsrol van de functie toestemming om AWS STS aan te roepen. Verplaats alle SDK-aanroepen van de frontend naar de Lambda@Edge-functie..
Waarom dit het antwoord is
De correcte aanpak is het toevoegen van een Lambda@Edge-functie. Deze functie kan bij viewer requests worden aangeroepen en de AWS SDK-aanroepen verwerken om tijdelijke referenties van AWS STS te verkrijgen. Door de uitvoeringsrol van de Lambda@Edge-functie de benodigde STS-machtigingen te geven, worden hardcoded referenties uit de frontend verwijderd en blijft de app functioneel. CloudFront Functions zijn niet geschikt omdat ze geen toegang hebben tot netwerkbronnen (zoals AWS STS) en geen omgevingsvariabelen of externe configuratie kunnen gebruiken. Het plaatsen van referenties in de functie zelf, zowel bij Lambda@Edge als CloudFront Functions, lost het probleem van hardcoded referenties niet op; het verplaatst de hardcoding alleen naar een andere locatie.
Slaag voor je examen — zonder eindeloos zoeken naar antwoorden
Krijg elke geverifieerde vraag en uitleg voor dit examen op één plek, en bespaar uren voorbereiding. Meer dan 1.000 certificeringen · Meer dan 20 talen · gratis om te beginnen.
Slaag sneller voor je examen → Geen kaart nodig