MFA should be enabled for the "root" user account
Description
The root account is the most privileged user in an AWS account. MFA (multi-factor authentication) adds an extra layer of protection on top of a user name and password. With MFA enabled, when a user signs in to an AWS website, they are prompted for their user name and password and an authentication code from their AWS MFA device.
Note: When virtual MFA is used for root accounts, it should not be enabled on a personal device, but rather enable a dedicated and not personally owned mobile device (tablet or phone)(“non-personal virtual MFA”). This lessens the risks of losing access to the MFA due to device loss, device trade-in, or if the individual owning the device is no longer employed at the company.
Rationale
Enabling MFA provides increased security for console access as it requires the authenticating principal to possess a device that emits a time-sensitive key and has knowledge of a credential.
From the console
- Sign in to the AWS Management Console and open the IAM console at
https://console.aws.amazon.com/iam/.
Note: To manage MFA devices for the root AWS account, you must use your root
account credentials to sign in to AWS. You cannot manage MFA devices for the root
account using other credentials.
- Choose Dashboard , and under
Security Status
, expand Activate MFA
on your root account. - Choose Activate MFA.
- In the wizard, choose A virtual MFA device and then choose Next Step.
- IAM generates and displays configuration information for the virtual MFA device,
including a QR code graphic. The graphic is a representation of the secret
configuration key that is available for manual entry on devices that do not
support QR codes.
- Open your
virtual MFA application
. (For a list of apps that you can use for hosting
virtual MFA devices, see Virtual MFA Applications.) If the virtual MFA application
supports multiple accounts (multiple virtual MFA devices), choose the option to
create a new account (a new virtual MFA device). - Determine whether the MFA app supports QR codes, and then do one of the
following:
- Use the app to scan the QR code. For example, you might choose the
camera icon or choose an option similar to Scan code, and then use the
device’s camera to scan the code.
- In the Manage MFA Device wizard, choose Show secret key for manual
configuration, and then type the secret configuration key into your MFA
application.
When you are finished, the virtual MFA device starts generating one-time passwords.
In the Manage MFA Device wizard, in the Authentication Code 1 box, type the one-time
password that currently appears in the virtual MFA device. Wait up to 30 seconds for
the device to generate a new one-time password. Then type the second one-time
password into the Authentication Code 2 box. Choose Assign Virtual MFA.
References
- CCE-78911-5
- https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#id_root-user_manage_mfa
- https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_enable_virtual.html#enable-virt-mfa-for-root
Additional Information: The IAM User root account for Gov Cloud (US) regions does not have console access. This control is not applicable for Gov Cloud (US) regions.