Question 1,287 of 1,738
Identity and Access ManagementmediumMultiple SelectObjective-mapped

Quick Answer

The answer is that three conditions must be met for cross-account S3 role access: the IAM role in Account A must have a permissions policy allowing the required S3 actions, the S3 bucket policy in Account B must explicitly grant access to that IAM role, and the IAM role must be assumed by a user or service in Account A. This works because S3 uses resource-based policies for cross-account access, so the bucket policy acts as the gatekeeper in Account B, while the role’s permissions policy defines what actions the assumed identity can perform in Account A. On the AWS Certified Security Specialty SCS-C02 exam, this scenario tests your understanding of how IAM roles interact with S3 bucket policies versus trust policies—a common trap is confusing the role’s trust policy (needed for cross-account role assumption) with the bucket policy (needed for S3 access). Remember the memory tip: “Bucket policy grants access; role policy allows actions; role must be assumed.”

SCS-C02 Identity and Access Management Practice Question

This SCS-C02 practice question tests your understanding of identity and access management. Match the stated requirement to the specific cloud service, access model, or configuration option — many options are valid in isolation but not for this scenario. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.

A company wants to allow an IAM role from Account A to access an S3 bucket in Account B. Which THREE conditions must be met?

Question 1mediummulti select
Full question →

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

The S3 bucket policy in Account B must grant access to the IAM role in Account A.

Option A, C, and E are correct. Option A: the role must have a trust policy allowing the bucket's account to assume it? Actually, the role is in Account A, and the bucket in Account B. The role needs to be allowed by the bucket policy. So option A is incorrect: the bucket policy in Account B must allow the IAM role. Option B is correct? Let's re-evaluate: To grant cross-account access to an S3 bucket, the bucket policy in Account B must grant access to the IAM role in Account A. The IAM role in Account A must have a permissions policy that allows S3 actions, but the trust policy on the role is not needed for S3 access because S3 uses resource-based policies. So the correct conditions are: Option B: IAM role in Account A must have a permissions policy allowing S3 actions. Option C: S3 bucket policy in Account B must grant access to the IAM role. Option E: The IAM role must be assumed by a user or service in Account A. So the correct combination is B, C, E. Option A is incorrect because trust policy is for the role to be assumed by another account, not for S3 access. Option D is incorrect because an SCP could deny but is not required.

Key principle: NAT direction and interface roles matter as much as the IP address mapping. Inside/outside designation controls which traffic is translated.

Answer analysis

Option-by-option breakdown

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

  • The S3 bucket policy in Account B must grant access to the IAM role in Account A.

    Why this is correct

    The bucket policy must explicitly allow the role.

    Related concept

    Static NAT maps one inside address to one outside address.

  • The IAM role in Account A must have a trust policy that allows the S3 bucket's account to assume the role.

    Why it's wrong here

    Trust policy is for who can assume the role, not for S3 access.

  • A service control policy (SCP) must allow the cross-account access.

    Why it's wrong here

    SCP may deny but is not required to allow.

  • The IAM role must be assumed by an IAM user or AWS service in Account A.

    Why this is correct

    The role must be assumed to obtain temporary credentials.

    Related concept

    Static NAT maps one inside address to one outside address.

  • The IAM role in Account A must have an IAM permissions policy that allows the required S3 actions.

    Why this is correct

    The role needs permission to perform S3 actions.

    Related concept

    Static NAT maps one inside address to one outside address.

Common exam traps

Common exam trap: NAT rules depend on direction and matching traffic

NAT is not only about the public address. The inside/outside interface roles and the ACL or rule that matches traffic are just as important.

Detailed technical explanation

How to think about this question

NAT questions usually test address translation, overload/PAT behaviour, static mappings and whether the right traffic is being translated. Read the interface direction and address terms carefully.

KKey Concepts to Remember

  • Static NAT maps one inside address to one outside address.
  • PAT allows many inside hosts to share one public address using ports.
  • Inside local and inside global describe the private and translated addresses.
  • NAT ACLs identify traffic for translation, not always security filtering.

TExam Day Tips

  • Identify inside and outside interfaces first.
  • Check whether the scenario needs static NAT, dynamic NAT or PAT.
  • Do not confuse NAT matching ACLs with normal packet-filtering intent.

Key takeaway

NAT direction and interface roles matter as much as the IP address mapping. Inside/outside designation controls which traffic is translated.

Real-world example

How this comes up in practice

A media company stores terabytes of video archives that are accessed once a year for audit purposes. Moving these objects to a cold storage tier (Azure Archive, S3 Glacier, or Google Nearline) costs a fraction of hot storage. Questions like this test whether you understand storage tiers, access frequency tradeoffs, and retrieval latency requirements.

What to study next

Got this wrong? Here's your next step.

Review the four NAT address types (inside local, inside global, outside local, outside global), PAT port overload, and static vs dynamic NAT use cases. Then practise related SCS-C02 NAT questions on configuration and troubleshooting.

Related practice questions

Related SCS-C02 practice-question pages

Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.

Practice this exam

Start a free SCS-C02 practice session

Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.

FAQ

Questions learners often ask

What does this SCS-C02 question test?

Identity and Access Management — This question tests Identity and Access Management — Static NAT maps one inside address to one outside address..

What is the correct answer to this question?

The correct answer is: The S3 bucket policy in Account B must grant access to the IAM role in Account A. — Option A, C, and E are correct. Option A: the role must have a trust policy allowing the bucket's account to assume it? Actually, the role is in Account A, and the bucket in Account B. The role needs to be allowed by the bucket policy. So option A is incorrect: the bucket policy in Account B must allow the IAM role. Option B is correct? Let's re-evaluate: To grant cross-account access to an S3 bucket, the bucket policy in Account B must grant access to the IAM role in Account A. The IAM role in Account A must have a permissions policy that allows S3 actions, but the trust policy on the role is not needed for S3 access because S3 uses resource-based policies. So the correct conditions are: Option B: IAM role in Account A must have a permissions policy allowing S3 actions. Option C: S3 bucket policy in Account B must grant access to the IAM role. Option E: The IAM role must be assumed by a user or service in Account A. So the correct combination is B, C, E. Option A is incorrect because trust policy is for the role to be assumed by another account, not for S3 access. Option D is incorrect because an SCP could deny but is not required.

What should I do if I get this SCS-C02 question wrong?

Review the four NAT address types (inside local, inside global, outside local, outside global), PAT port overload, and static vs dynamic NAT use cases. Then practise related SCS-C02 NAT questions on configuration and troubleshooting.

What is the key concept behind this question?

Static NAT maps one inside address to one outside address.

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more ways this is tested on SCS-C02

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A company has a requirement to grant cross-account access to an S3 bucket named 'shared-data' in Account A (111111111111) to users in Account B (222222222222). The security team has set up a bucket policy in Account A that grants read-only access to the IAM role 'DataReader' in Account B. The bucket policy is as follows: {"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"AWS":"arn:aws:iam::222222222222:role/DataReader"},"Action":["s3:GetObject"],"Resource":"arn:aws:s3:::shared-data/*"}]}. A user in Account B assumes the 'DataReader' role, but when trying to read an object from the bucket, they receive an 'Access Denied' error. What is the MOST likely reason for this error?

medium
  • A.The bucket policy principal must be the IAM user ARN, not the role ARN.
  • B.The bucket policy is missing the 's3:ListBucket' action, which is required to read objects.
  • C.The IAM role 'DataReader' does not have an IAM policy that allows s3:GetObject on the bucket.
  • D.The bucket objects are encrypted with a KMS key, and the role does not have permission to decrypt.

Why C: Option D is correct. For cross-account access, the IAM role in Account B must have an IAM policy that allows the action (s3:GetObject) on the target bucket. Even if the bucket policy grants access, the role itself must also allow the action. Option A is wrong because the bucket policy uses the correct principal format. Option B is wrong because S3 does not require KMS for access unless encryption is involved. Option C is wrong because the bucket policy allows all principals in the role, not just specific users.

Last reviewed: Jun 20, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

This SCS-C02 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-C02 exam.