All checks
Medium Cognito · regional

Cognito user pools should have threat protection activated with full function enforcement mode for standard authentication

Checks that a Cognito user pool has threat protection, formerly advanced security features, active in Full function mode for standard authentication; Audit only and inactive fail. Full function blocks or challenges risky sign-ins and compromised credentials, where Audit only just logs them. Threat protection needs the Plus feature plan.

service
Cognito
severity
Medium
scope
evaluated in every region

How to fix it

  • Can break clients: With Cognito defaults, Full function blocks sign-in at every detected risk level and on compromised credentials, so AWS advises two weeks in Audit only first.
  • Affects another check: Cognito.4 also needs Full function for custom authentication, so it fails until both modes are Full function.

In the console

Amazon Cognito → User pools → the pool → Threat protection

Feature plan
Plus, set from the pool's Settings menu first
Threat protection
Activate
Enforcement mode
Full function, for standard authentication
Compromised credentials
Cognito defaults (block sign-in), or Custom actions
Adaptive authentication
Cognito defaults (block sign-in at every risk level), or Custom responses per risk level

With the AWS CLI

  • Overwrites existing settings: update-user-pool resets every setting it is not given to its default, so read the pool with describe-user-pool and resupply its configuration in the same call.
aws cognito-idp update-user-pool --user-pool-id <user-pool-id> --user-pool-tier PLUS --user-pool-add-ons AdvancedSecurityMode=ENFORCED --region <region>

With Terraform

resource "aws_cognito_user_pool" "this" {
  name           = var.user_pool_name
  user_pool_tier = "PLUS"

  user_pool_add_ons {
    advanced_security_mode = "ENFORCED"
  }
}

See which of your accounts this check is failing on.

Book a live scan