Check ID:
Provider: AWS
Service:
Severity: MEDIUM
Categories:
Resource type:
cognito_user_pool_self_registration_disabledProvider: AWS
Service:
cognitoSeverity: MEDIUM
Categories:
identity-accessResource type:
OtherWhat this check verifies
Amazon Cognito user pools are evaluated for self-service sign-up. The expected configuration isAllowAdminCreateUserOnly=true so only administrators create accounts.
When self sign-up is allowed, the check also highlights any linked identity pools and the authenticated role(s) that new users could assume.
Risk
Open sign-up lets untrusted users gain authenticated identities, potentially assuming identity pool roles. This can expose data (confidentiality), enable unauthorized actions (integrity), and drive abuse or cost via resource use (availability). Mass registrations and token harvesting increase the chance of lateral access.Recommendation
Enforce admin-only user creation. If self sign-up is necessary, require verification, MFA, and bot protections; restrict app clients. Apply least privilege to any roles for authenticated users and minimize scopes. Use approval/invite flows, add rate limits, monitor sign-ups, and audit access for defense in depth.Remediation
- CLI
- Terraform
- Native IaC
- Dashboard steps
References
- https://docs.aws.amazon.com/cognito/latest/developerguide/signing-up-users-in-your-app.html
- https://docs.amazonaws.cn/en_us/cognito/latest/developerguide/signing-up-users-in-your-app.html
- https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-admin-create-user-policy.html
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = cognito_user_pool_self_registration_disabled. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks