Cognito Identity

Implementation details for API cognito-identity

Coverage Overview

Cognito Identity is supported by LocalStack only in the pro image.

AvailabilityTesting*
OperationImplementedImageInternal Test SuiteExternal Test SuiteTerraform ValidatedAWS ValidatedSnapshot TestedDetails
CreateIdentityPool✔️pro✔️✔️✔️✔️✔️Show Tests
DeleteIdentities
DeleteIdentityPool✔️pro✔️✔️✔️✔️✔️Show Tests
DescribeIdentity
DescribeIdentityPool✔️pro✔️✔️✔️✔️✔️Show Tests
GetCredentialsForIdentity✔️pro✔️✔️✔️✔️Show Tests
GetId✔️pro✔️✔️✔️Show Tests
GetIdentityPoolRoles✔️pro✔️✔️✔️Show Tests
GetOpenIdToken✔️pro
GetOpenIdTokenForDeveloperIdentity✔️pro✔️
GetPrincipalTagAttributeMap
ListIdentities✔️pro
ListIdentityPools✔️pro✔️✔️✔️Show Tests
ListTagsForResource
LookupDeveloperIdentity
MergeDeveloperIdentities
SetIdentityPoolRoles✔️pro✔️✔️✔️✔️✔️Show Tests
SetPrincipalTagAttributeMap
TagResource
UnlinkDeveloperIdentity
UnlinkIdentity
UntagResource
UpdateIdentityPool✔️pro✔️✔️

Terminology

  • Internal Test Suite: tested by LocalStack's internal integration test suite
  • External Test Suite: covered by an external integration test suite, that runs against LocalStack
  • Terraform Validated: operation tested with Terraform
  • AWS Validated: the integration test that includes this operation call was validated against AWS
  • Snapshot Tested: the operation is part of a snapshot parity test, which verifies the responses by LocalStack and AWS are the same

Testing Details

This section gives an overview about the internal integration test suite and the specific test cases that recorded the API call.

How to read the test details?

For each operation we put up a list of the related integration test cases.
Those operation calls have been recorded during the exeuction of the outlined test cases. Some calls might be internal, i.e., they are not explicitly called in the test, but are triggered implicitly by the LocalStack framework.

  • Parameters: The tests are ordered by the parameters used, which are highlighted in bold.
  • Test Details: LocalStack Community or LocalStack Pro indicates where the test originates. For each test you see:
    • test name
    • status code returned (which is the expected one for the test case)
    • information about validation:
      • AWS validated the test is validated against AWS, meaning it run successfully against real AWS as well
      • Snapshot Tested this is a snapshot parity test, meaning the responses are validated against AWS


CreateIdentityPool

Parameters: AllowUnauthenticatedIdentities, CognitoIdentityProviders, IdentityPoolName
  • LocalStack Pro
    • test_cognito_role_attachment LocalStack Pro: tests/aws/services/cloudformation/resources/test_cognito.py::test_cognito_role_attachment HTTP Status Code: 200
    • test_admin_no_srp_auth_flow LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestAuthFlows::test_admin_no_srp_auth_flow HTTP Status Code: 200 AWS validated
    • test_change_password[user-{short_uid}@example.com] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}@example.com] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_change_password[user-{short_uid}] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_login_via_web_form LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_login_via_web_form HTTP Status Code: 200
    • test_mfa_sms_config LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_mfa_sms_config HTTP Status Code: 200
    • test_password_policy LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_password_policy HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_restore_forgotten_password LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_restore_forgotten_password HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_srp_login LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_srp_login HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-body] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-body] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-query_params] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-query_params] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_update_user_mfa_preferences LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_update_user_mfa_preferences HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_user_groups LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_groups HTTP Status Code: 200
    • test_user_pool_error_messages LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_pool_error_messages HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_cognito_identity_get_id_region_matches LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognitoIdentity::test_cognito_identity_get_id_region_matches HTTP Status Code: 200
    • test_create_identity_get_id LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognitoIdentity::test_create_identity_get_id HTTP Status Code: 200 AWS validated Snapshot Tested
Parameters: AllowUnauthenticatedIdentities, IdentityPoolName
  • LocalStack Pro
    • test_create_cognito_identity_pool_roles LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_create_cognito_identity_pool_roles HTTP Status Code: 200
Parameters: AllowUnauthenticatedIdentities, IdentityPoolName, IdentityPoolTags
  • LocalStack Pro
    • test_cognito_custom_ids LocalStack Pro: tests/aws/services/cloudformation/resources/test_cognito.py::test_cognito_custom_ids HTTP Status Code: 200

DeleteIdentityPool

Parameters: IdentityPoolId
  • LocalStack Pro
    • test_cognito_custom_ids LocalStack Pro: tests/aws/services/cloudformation/resources/test_cognito.py::test_cognito_custom_ids HTTP Status Code: 200
    • test_cognito_role_attachment LocalStack Pro: tests/aws/services/cloudformation/resources/test_cognito.py::test_cognito_role_attachment HTTP Status Code: 200
    • test_admin_no_srp_auth_flow LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestAuthFlows::test_admin_no_srp_auth_flow HTTP Status Code: 200 AWS validated
    • test_change_password[user-{short_uid}@example.com] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}@example.com] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_change_password[user-{short_uid}] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_cognito_identity_pool_roles LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_create_cognito_identity_pool_roles HTTP Status Code: 200
    • test_login_via_web_form LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_login_via_web_form HTTP Status Code: 200
    • test_mfa_sms_config LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_mfa_sms_config HTTP Status Code: 200
    • test_password_policy LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_password_policy HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_restore_forgotten_password LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_restore_forgotten_password HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_srp_login LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_srp_login HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-body] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-body] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-query_params] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-query_params] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_update_user_mfa_preferences LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_update_user_mfa_preferences HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_user_groups LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_groups HTTP Status Code: 200
    • test_user_pool_error_messages LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_pool_error_messages HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_identity_get_id LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognitoIdentity::test_create_identity_get_id HTTP Status Code: 200 AWS validated Snapshot Tested

DescribeIdentityPool

Parameters: IdentityPoolId
  • LocalStack Pro
    • test_cognito_custom_ids LocalStack Pro: tests/aws/services/cloudformation/resources/test_cognito.py::test_cognito_custom_ids HTTP Status Code: 200
    • test_create_identity_get_id LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognitoIdentity::test_create_identity_get_id HTTP Status Code: 200 AWS validated Snapshot Tested

GetCredentialsForIdentity

Parameters: IdentityId, Logins
  • LocalStack Pro
    • test_admin_no_srp_auth_flow LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestAuthFlows::test_admin_no_srp_auth_flow HTTP Status Code: 200 AWS validated
    • test_change_password[user-{short_uid}@example.com] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}@example.com] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_change_password[user-{short_uid}] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_login_via_web_form LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_login_via_web_form HTTP Status Code: 200
    • test_mfa_sms_config LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_mfa_sms_config HTTP Status Code: 200
    • test_password_policy LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_password_policy HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_restore_forgotten_password LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_restore_forgotten_password HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_srp_login LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_srp_login HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-body] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-body] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-query_params] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-query_params] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_update_user_mfa_preferences LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_update_user_mfa_preferences HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_user_groups LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_groups HTTP Status Code: 200
    • test_user_pool_error_messages LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_pool_error_messages HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_identity_get_id LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognitoIdentity::test_create_identity_get_id HTTP Status Code: 200 AWS validated Snapshot Tested

GetId

Parameters: IdentityPoolId
  • LocalStack Pro
    • test_cognito_identity_get_id_region_matches LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognitoIdentity::test_cognito_identity_get_id_region_matches HTTP Status Code: 200
    • test_create_identity_get_id LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognitoIdentity::test_create_identity_get_id HTTP Status Code: 200 AWS validated Snapshot Tested
Parameters: IdentityPoolId, Logins
  • LocalStack Pro
    • test_admin_no_srp_auth_flow LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestAuthFlows::test_admin_no_srp_auth_flow HTTP Status Code: 200 AWS validated
    • test_change_password[user-{short_uid}@example.com] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}@example.com] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_change_password[user-{short_uid}] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_login_via_web_form LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_login_via_web_form HTTP Status Code: 200
    • test_mfa_sms_config LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_mfa_sms_config HTTP Status Code: 200
    • test_password_policy LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_password_policy HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_restore_forgotten_password LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_restore_forgotten_password HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_srp_login LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_srp_login HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-body] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-body] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-query_params] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-query_params] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_update_user_mfa_preferences LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_update_user_mfa_preferences HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_user_groups LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_groups HTTP Status Code: 200
    • test_user_pool_error_messages LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_pool_error_messages HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_identity_get_id LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognitoIdentity::test_create_identity_get_id HTTP Status Code: 200 AWS validated Snapshot Tested

GetIdentityPoolRoles

Parameters: IdentityPoolId
  • LocalStack Pro
    • test_cognito_role_attachment LocalStack Pro: tests/aws/services/cloudformation/resources/test_cognito.py::test_cognito_role_attachment HTTP Status Code: 200
    • test_create_cognito_identity_pool_roles LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_create_cognito_identity_pool_roles HTTP Status Code: 200

ListIdentityPools

Parameters: MaxResults
  • LocalStack Pro
    • test_create_cognito_identity_pool_roles LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_create_cognito_identity_pool_roles HTTP Status Code: 200

SetIdentityPoolRoles

Parameters: IdentityPoolId, RoleMappings, Roles
  • LocalStack Pro
    • test_cognito_role_attachment LocalStack Pro: tests/aws/services/cloudformation/resources/test_cognito.py::test_cognito_role_attachment HTTP Status Code: 200
    • test_cognito_role_attachment LocalStack Pro: tests/aws/services/cloudformation/resources/test_cognito.py::test_cognito_role_attachment HTTP Status Code: 400 (ResourceNotFoundException)
Parameters: IdentityPoolId, Roles
  • LocalStack Pro
    • test_admin_no_srp_auth_flow LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestAuthFlows::test_admin_no_srp_auth_flow HTTP Status Code: 200 AWS validated
    • test_change_password[user-{short_uid}@example.com] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}@example.com] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_change_password[user-{short_uid}] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_change_password[user-{short_uid}] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_cognito_identity_pool_roles LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_create_cognito_identity_pool_roles HTTP Status Code: 200
    • test_login_via_web_form LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_login_via_web_form HTTP Status Code: 200
    • test_mfa_sms_config LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_mfa_sms_config HTTP Status Code: 200
    • test_password_policy LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_password_policy HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_restore_forgotten_password LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_restore_forgotten_password HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_srp_login LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_srp_login HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-body] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-body] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_token_endpoint[code-query_params] LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_token_endpoint[code-query_params] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_update_user_mfa_preferences LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_update_user_mfa_preferences HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_user_groups LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_groups HTTP Status Code: 200
    • test_user_pool_error_messages LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognito::test_user_pool_error_messages HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_identity_get_id LocalStack Pro: tests/aws/services/cognito/test_cognito.py::TestCognitoIdentity::test_create_identity_get_id HTTP Status Code: 200 AWS validated Snapshot Tested


Last modified March 20, 2023: improve Coverage Docs (#505) (46f2fb0c0)