Courseiva
Identity and Access ManagementmediumMultiple ChoiceObjective-mapped

SCS-C03 Identity and Access Management Practice Question

An application running on EC2 needs to access DynamoDB tables. What is the most secure way to provide these permissions?

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Assign an IAM role to the EC2 instance via an instance profile.

Assigning an IAM role to an EC2 instance is the secure, standard AWS approach. The instance profile automatically provides temporary credentials that the SDK uses, eliminating the need for manual key rotation or storage. This method follows the principle of least privilege by scoping access strictly to the necessary DynamoDB resources, preventing exposure of long-term credentials and simplifying maintenance for the application developers and security administrators.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Embed IAM access keys directly into the application code.

    Why it's wrong here

    Hardcoding credentials in code is a critical security vulnerability. If the code is pushed to a repository, the keys can be easily stolen. This practice violates fundamental security principles and makes rotating credentials extremely difficult, as it requires re-deploying the application whenever the keys need to be updated.

  • Store IAM access keys in a configuration file on the EC2 instance.

    Why it's wrong here

    Storing keys in configuration files is nearly as insecure as hardcoding them. Any user or process with read access to the file can compromise the credentials. Furthermore, managing these files across multiple instances is an operational burden and does not provide the automated rotation benefits offered by IAM roles.

  • Assign an IAM role to the EC2 instance via an instance profile.

    Why this is correct

    Using IAM roles with instance profiles is the gold standard for EC2 security. It provides temporary, short-lived credentials that are automatically rotated by the AWS environment. The application uses the AWS SDK to retrieve these credentials, ensuring no sensitive data is stored on the disk or exposed in the code.

  • Create a public DynamoDB table to allow unauthenticated access.

    Why it's wrong here

    Public access to data stores is a severe misconfiguration. DynamoDB tables should never be made public unless they are intended to serve as a public CDN-like interface, which is rarely the case for internal application data. This exposes sensitive data to the entire internet, violating all data privacy and compliance standards.

Quick reference

AWS S3 Storage Class Comparison

Storage ClassMin DurationRetrievalUse Case
S3 StandardNoneImmediateFrequently accessed data
S3 Standard-IA30 daysImmediateInfrequent access, rapid retrieval
S3 One Zone-IA30 daysImmediateNon-critical infrequent data
S3 Intelligent-TieringNoneImmediate–hoursUnknown or changing access patterns
S3 Glacier Instant90 daysMillisecondsArchive with instant retrieval
S3 Glacier Flexible90 daysMinutes–hoursArchive, flexible retrieval
S3 Glacier Deep Archive180 daysHoursLong-term compliance archive

About these practice questions

One of 99 original SCS-C03 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official Amazon Web Services exam blueprint

This SCS-C03 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SCS-C03 exam.