Una aplicación de redes sociales utiliza el AWS SDK for JavaScript en el navegador para obtener credenciales de usuario de AWS STS. Los activos de la aplicación se almacenan en un bucket de S3 y se entregan a través de una distribución de CloudFront con el bucket de S3 como origen. Actualmente, las credenciales de rol que asume la aplicación se almacenan en texto plano dentro de un archivo JSON en el código del frontend. El desarrollador debe eliminar las credenciales codificadas, sin dejar de permitir que la aplicación obtenga credenciales. ¿Qué enfoque satisface este requisito?
Elige una respuesta
Toca una opción para verificar tu respuesta.
Respuesta correcta: Añada una función Lambda@Edge a la distribución de CloudFront e invóquela en las solicitudes del visor. Conceda al rol de ejecución de la función permiso para llamar a AWS STS. Mueva todas las llamadas del SDK del frontend a la función Lambda@Edge..
Por qué esta es la respuesta
La opción correcta es añadir una función Lambda@Edge invocada en las solicitudes del visor, otorgar al rol de ejecución permiso para llamar a AWS STS y mover las llamadas del SDK del frontend a esta función. Esto elimina las credenciales codificadas del frontend, ya que Lambda@Edge puede asumir un rol de IAM con los permisos necesarios para interactuar con AWS STS de forma segura en el backend, sin exponer las credenciales al cliente. Las CloudFront Functions son incorrectas porque están diseñadas para manipulaciones ligeras y de baja latencia en el borde, no para realizar llamadas a servicios de AWS como STS, que requieren un entorno de ejecución más robusto y permisos de IAM. Las opciones que sugieren poner las credenciales del archivo JSON en la función Lambda@Edge o CloudFront Function son incorrectas porque simplemente trasladan el problema de las credenciales codificadas de un lugar a otro, sin resolver la vulnerabilidad de seguridad.
Aprueba tu examen — sin la interminable búsqueda de respuestas
Obtén todas las preguntas y explicaciones verificadas para este examen en un solo lugar, y ahorra horas de preparación. Más de 1,000 certificaciones · Más de 20 idiomas · Empieza gratis.
Aprueba tu examen más rápido → No se requiere tarjeta