Theme 4: Manage identities
Essential Eight strategies covered
Restrict administrative privileges, multi-factor authentication
Robust management of identity and permissions is a critical aspect of managing security in the cloud. Strong identity practices balance necessary access and least privilege. This helps development teams move quickly without compromising security.
Use identity federation to centralise management of identities. This makes it easier to manage access across multiple applications and services because you are managing access from a single location. This also helps you implement temporary permissions and multi-factor authentication (MFA).
Grant users only the permissions that they require to perform their tasks. AWS Identity and Access Management Access Analyzer can validate policies and verify public and cross-account access. Features such as AWS Organizations service control policies (SCPs), IAM policy conditions, IAM permissions boundaries, and AWS IAM Identity Center permission sets can help you configure fine-grained access control (FGAC).
When doing any type of authentication, it is best to use temporary credentials to reduce or eliminate risks—such as credentials being inadvertently disclosed, shared, or stolen. Use IAM roles instead of IAM users.
Use strong sign-in mechanisms, such as MFA, to mitigate the risk where sign-in credentials have been inadvertently disclosed or are easily guessed. Require MFA for the root user, and you can also require it at a federation level. If use of IAM users is unavoidable, enforce MFA.
To monitor and report on compliance, you must continually work to reduce permissions, monitor findings from IAM Access Analyzer, and remove unused IAM resources. Use AWS Config rules to make sure that strong sign-in mechanisms are enforced, credentials are short-lived, and IAM resources are in use.
Related best practices in the AWS Well-Architected Framework
Implementing this theme
Implement identity federation
Apply least privilege permissions
-
Safeguard your root user credentials and don't use them for everyday tasks
-
Use IAM Access Analyzer to generate least-privilege policies based on access activity
-
Verify public and cross-account access to resources with IAM Access Analyzer
-
Use IAM Access Analyzer to validate your IAM policies for secure and functional permissions
-
Use permissions boundaries to set the maximum permissions that an identity-based policy can grant
-
Regularly review and remove unused users, roles, permissions, policies, and credentials
-
Get started with AWS managed policies and move toward least-privilege permissions
Rotate credentials
Enforce MFA
Monitoring this theme
Monitor least privilege access
Implement the following AWS Config rules
-
ACCESS_KEYS_ROTATED
-
IAM_ROOT_ACCESS_KEY_CHECK
-
IAM_USER_MFA_ENABLED
-
IAM_USER_UNUSED_CREDENTIALS_CHECK
-
IAM_PASSWORD_POLICY
-
ROOT_ACCOUNT_HARDWARE_MFA_ENABLED