Sensibilidad de mayúsculas y minúsculas en el grupo de usuarios - Amazon Cognito

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Sensibilidad de mayúsculas y minúsculas en el grupo de usuarios

De forma predeterminada, los grupos de usuarios de Amazon Cognito que cree en ellos AWS Management Console no distinguen mayúsculas de minúsculas. Cuando un grupo de usuarios no distingue entre mayúsculas y minúsculas, user@example.com y User@example.com hacen referencia al mismo usuario. Cuando los nombres de usuario de un grupo de usuarios no distinguen entre mayúsculas y minúsculas, los atributos preferred_username y email tampoco distinguen entre mayúsculas y minúsculas.

Para tener en cuenta la configuración de distinción entre mayúsculas y minúsculas del grupo de usuarios, identifique a los usuarios en el código de la aplicación en función del atributo de usuario alternativo. Porque el caso de un nombre de usuario, un nombre de usuario preferido o un atributo de dirección de correo electrónico puede variar en diferentes perfiles de usuario, se recomienda que haga referencia al atributo sub en su lugar. También puede crear un atributo personalizado inmutable en su grupo de usuarios y asignar su propio valor de identificador único al atributo en cada nuevo perfil de usuario. Al crear un usuario por primera vez, puede escribir un valor en un atributo personalizado inmutable que haya creado.

nota

Independientemente de la configuración de distinción entre mayúsculas y minúsculas de su grupo de usuarios, Amazon Cognito requiere que un usuario federado de un proveedor de identidades (IdP) SAML u OIDC pase una única notificación NameId o sub única con distinción entre mayúsculas y minúsculas. Para obtener más información sobre el identificador único que distingue entre mayúsculas y minúsculas y el SAML IdPs, consulte. Uso del inicio de sesión SAML iniciado por SPI

Creación de un grupo de usuarios que distingue entre minúsculas y mayúsculas

Si crea recursos con AWS Command Line Interface (AWS CLI) y operaciones de API como CreateUserPool, por ejemplo, debe establecer el parámetro booleano CaseSensitive en. false Esta configuración crea un grupo de usuarios sin distinción entre mayúsculas y minúsculas Si no especifica ningún valor, la CaseSensitive utiliza true de forma predeterminada. Esto es lo contrario al comportamiento predeterminado de los grupos de usuarios que se crean en AWS Management Console. Antes del 12 de febrero de 2020, los grupos de usuarios distinguían entre mayúsculas y minúsculas de forma predeterminada, independientemente de la plataforma.

Puedes usar la pestaña Experiencia de inicio de sesión de la operación AWS Management Console o de la DescribeUserPoolAPI para revisar la configuración de distinción entre mayúsculas y minúsculas de cada grupo de usuarios de tu cuenta.

Migrar a un nuevo grupo de usuarios

Debido a los posibles conflictos entre los perfiles de usuario, no se puede cambiar un grupo de usuarios de Amazon Cognito de una configuración que distingue entre mayúsculas y minúsculas a una que no hace la distinción. En su lugar, se deben migrar los usuarios a un nuevo grupo de usuarios. Debe crear código de migración para resolver conflictos relacionados con la distinción entre mayúsculas y minúsculas. Este código debe devolver un nuevo usuario único o rechazar el intento de inicio de sesión cuando detecta un conflicto. En un nuevo grupo de usuarios que no distingue entre mayúsculas y minúsculas, asigne un Migración del desencadenador de Lambda del usuario. La AWS Lambda función puede crear usuarios en el nuevo grupo de usuarios que no distingue entre mayúsculas y minúsculas. Cuando el usuario no logra iniciar sesión con el grupo de usuarios que no distingue entre mayúsculas y minúsculas, la función de Lambda busca y duplica al usuario desde el grupo de usuarios que distingue entre mayúsculas y minúsculas. También puede activar un activador Lambda de migración de usuarios en ForgotPasswordlos eventos. Amazon Cognito transfiere información de usuario y metadatos de eventos de la acción de inicio de sesión o de recuperación de contraseña a la función Lambda. Puede utilizar los datos de eventos para administrar conflictos entre nombres de usuario y direcciones de correo electrónico cuando la función cree el nuevo usuario en el grupo de usuarios que no distingue entre mayúsculas y minúsculas. Estos conflictos se producen entre nombres de usuario y direcciones de correo electrónico que serían únicos en un grupo de usuarios que no distingue entre mayúsculas y minúsculas, pero idénticos en un grupo de usuarios que sí distingue entre mayúsculas y minúsculas.

Para obtener más información sobre cómo utilizar un activador Lambda de migración de usuarios entre grupos de usuarios de Amazon Cognito, consulte Migración de usuarios a grupos de usuarios de Amazon Cognito en el blog. AWS