Courseiva
Question 44 of 247
Security and CompliancemediumMultiple ChoiceObjective-mapped

Require MFA for EC2 Actions with IAM Policy Conditions

A company requires that all users in an AWS account must authenticate with multi-factor authentication (MFA) before they can perform any actions on Amazon EC2 instances. The SysOps administrator needs to implement this requirement using IAM policies. Which IAM policy condition key should be used to enforce MFA?

Quick Answer

The answer is the `aws:MultiFactorAuthPresent` condition key. This key evaluates to `true` when the user has authenticated with a valid MFA device during the current session, allowing you to enforce MFA for EC2 actions by adding a `Deny` effect in an IAM policy when the condition is `false`. On the AWS Certified SysOps Administrator Associate SOA-C02 exam, this tests your understanding of IAM policy conditions for security enforcement, often appearing in scenario-based questions about restricting API calls. A common trap is confusing this key with `aws:MultiFactorAuthAge`, which checks how long ago MFA was used, not its presence. To remember, think "MFA Present = MFA Required" — if the key is not present, the action is denied.

⚠ Common exam trap

Watch out — candidates often confuse `aws:MultiFactorAuthPresent` with `aws:SourceIp` or `iam:PassedToService`, thinking IP-based or role-passing conditions can enforce MFA, but only the MFA-specific condition key directly checks authentication strength.

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

aws:MultiFactorAuthPresent

The `aws:MultiFactorAuthPresent` condition key checks whether the user authenticated using a valid MFA device before making the API request. By setting this condition to `true` in an IAM policy, you can enforce that all actions on EC2 instances require MFA authentication, meeting the company's requirement.

Answer analysis

Option-by-option breakdown

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

  • aws:SourceIp

    Why it's wrong here

    aws:SourceIp restricts access based on the source IP address, not MFA status.

  • aws:MultiFactorAuthPresent

    Why this is correct

    This condition key checks if the requester authenticated with an MFA device. It can be used to require MFA for specific actions.

  • aws:RequestedRegion

    Why it's wrong here

    aws:RequestedRegion limits actions to specific AWS Regions, not MFA.

  • iam:PassedToService

    Why it's wrong here

    iam:PassedToService is used when passing an IAM role to a service, not for MFA enforcement.

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 way this is tested on SOA-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 wants to enforce that all IAM users in an AWS account must use multi-factor authentication (MFA) to access the AWS Management Console. Which IAM policy effect should be used to deny access if MFA is not present?

easy
  • A.Allow with a condition that aws:MultiFactorAuthPresent is false
  • B.Allow with a condition that aws:MultiFactorAuthPresent is true
  • C.Deny with a condition that aws:MultiFactorAuthPresent is false
  • D.Deny with a condition that aws:MultiFactorAuthPresent is true

Why C: The IAM policy must explicitly deny access when MFA is not present. By using a Deny effect with the condition aws:MultiFactorAuthPresent set to false, any request that does not include MFA authentication is blocked. This is the standard approach to enforce MFA usage, as IAM policies default to an implicit deny, but an explicit Deny overrides any Allow that might otherwise grant access.

Last reviewed: Jun 11, 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 SOA-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 SOA-C02 exam.