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.
Desencadenador de Lambda de prerregistro.
Es posible que desee personalizar el proceso de registro en los grupos de usuarios que tienen opciones de registro de autoservicio. Algunos usos comunes del activador previo al registro son realizar análisis y registros personalizados de nuevos usuarios, aplicar estándares de seguridad y gobierno o vincular a los usuarios de un IdP de terceros a un perfil de usuario consolidado. Es posible que también tengas usuarios de confianza que no estén obligados a someterse a una verificación o confirmación.
Poco antes de que Amazon Cognito registre a un nuevo usuario local o federado, activa la función Lambda previa al registro. Como parte del proceso de registro, puede utilizar esta función para analizar el evento de inicio de sesión con una lógica personalizada y modificar o denegar al nuevo usuario.
Temas
- Flujos de Lambda de prerregistro.
- Parámetros del desencadenador de Lambda de prerregistro
- Tutoriales sobre inscripción
- Ejemplo anterior a la inscripción: Confirmación automática de los usuarios de un dominio registrado
- Ejemplo de invocación anterior a la inscripción: Confirmación y verificación automáticas de todos los usuarios
- Ejemplo de antes de registrarse: denegar el registro si el nombre de usuario tiene menos de cinco caracteres
Flujos de Lambda de prerregistro.
Flujo de inscripción del cliente.
Flujo de inscripción del servidor
La solicitud contiene datos de validación del cliente. Estos datos provienen de los ValidationData
valores transferidos al grupo de usuarios SignUp y AdminCreateUser API de los métodos.
Parámetros del desencadenador de Lambda de prerregistro
La solicitud que Amazon Cognito envía a esta función de Lambda es una combinación de los parámetros que se indican a continuación y los parámetros comunes que Amazon Cognito agrega a todas las solicitudes.
Parámetros de la solicitud anteriores a la inscripción
- userAttributes
-
Uno o varios pares de nombre y valor que representan atributos de usuario. Los nombres de atributo son las claves.
- validationData
-
Uno o varios pares clave-valor con datos de atributos de usuario que su aplicación pasó a Amazon Cognito en la solicitud de creación de un nuevo usuario. Envíe esta información a su función Lambda en el ValidationData parámetro de su solicitud AdminCreateUsero SignUpAPI.
Amazon Cognito no establece sus ValidationData datos como atributos del usuario que cree. ValidationData es información de usuario temporal que usted proporciona para su activador Lambda previo al registro.
- clientMetadata
-
Uno o varios pares clave-valor que puede proporcionar como datos de entrada personalizados a la función de Lambda que especifica para el desencadenador de prerregistro. Puede pasar estos datos a la función Lambda mediante el ClientMetadata parámetro en las siguientes API acciones: AdminCreateUser, AdminRespondToAuthChallengeForgotPassword, y. SignUp
Parámetros de la respuesta anterior a la inscripción
En la respuesta, puede establecer autoConfirmUser
en true
si desea confirmar automáticamente al usuario. Puede establecer autoVerifyEmail
en true
para verificar automáticamente el correo electrónico del usuario. Puede establecer autoVerifyPhone
en true
para verificar automáticamente el número de teléfono del usuario.
nota
Parámetros autoVerifyPhone
de respuesta autoVerifyEmail
y Amazon Cognito autoConfirmUser
los ignora cuando la función Lambda previa al registro es activada por el. AdminCreateUser
API
- autoConfirmUser
-
Establezca este parámetro en
true
para confirmar automáticamente al usuario, o enfalse
en caso contrario. - autoVerifyEmail
-
Si se establece en
true
, se verifica la dirección de correo electrónico de un usuario registrado; en caso contrario,false
. SiautoVerifyEmail
está establecido entrue
, el atributoemail
debe ser un valor válido distinto de null. De lo contrario, se producirá un error y el usuario no podrá completar la inscripción.Si el atributo
email
se selecciona como un alias, se creará un alias de la dirección de correo electrónico del usuario cuando se establezcaautoVerifyEmail
. Si ya existe un alias con esa dirección de correo electrónico, el alias se moverá al usuario nuevo y la dirección de correo electrónico del usuario anterior se marcará como no verificada. Para obtener más información, consulte Personalización de los atributos de inicio de sesión. - autoVerifyPhone
-
Si se establece en
true
, se verifica el número de teléfono de un usuario registrado; en caso contrario,false
. SiautoVerifyPhone
está establecido entrue
, el atributophone_number
debe ser un valor válido distinto de null. De lo contrario, se producirá un error y el usuario no podrá completar la inscripción.Si el atributo
phone_number
se selecciona como un alias, se creará un alias de número de teléfono del usuario cuando se establezcaautoVerifyPhone
. Si ya existe un alias con ese número de teléfono, el alias se moverá al número de teléfono del usuario nuevo y anterior y se marcará como no verificado. Para obtener más información, consulte Personalización de los atributos de inicio de sesión.
Tutoriales sobre inscripción
La función de Lambda de prerregistro se desencadena antes del registro del usuario. Consulte estos tutoriales de registro de Amazon Cognito para Android JavaScript e iOS.
Plataforma | Tutorial |
---|---|
JavaScript Identidad SDK | Registra usuarios con JavaScript |
Identidad de Android SDK | Inscripción de usuarios con Android |
Identidad de iOS SDK | Inscripción de usuarios con iOS |
Ejemplo anterior a la inscripción: Confirmación automática de los usuarios de un dominio registrado
Puede usar el desencadenador de Lambda de prerregistro para agregar lógica personalizada que valide el registro de usuarios nuevos en un grupo de usuarios. Este es un ejemplo de JavaScript programa que muestra cómo registrar un nuevo usuario. Este invoca a un desencadenador de Lambda de prerregistro como parte de la autenticación.
Se trata de un desencadenador de Lambda de ejemplo al que se llama en el momento previo al registro en el grupo de usuarios mediante el desencadenador de Lambda de prerregistro. Utiliza un atributo personalizado, custom:domain, para confirmar automáticamente a los usuarios nuevos de un determinado dominio de correo electrónico. Los usuarios nuevos que no pertenezcan al dominio personalizado se añadirán al grupo de usuarios, pero no se confirmarán automáticamente.
Amazon Cognito transfiere la información del evento a la función de Lambda. A continuación, la función devuelve el mismo objeto de evento a Amazon Cognito con los cambios en la respuesta. En la consola de Lambda puede configurar un evento de prueba con los datos relevantes para el desencadenador de Lambda. El siguiente es un evento de prueba para este código de ejemplo:
Ejemplo de invocación anterior a la inscripción: Confirmación y verificación automáticas de todos los usuarios
En este ejemplo se confirman todos los usuarios y se establece la verificación de los atributos email
y phone_number
de cada usuario si se especifican. Además, si están habilitados los alias, se crearán alias automáticamente para phone_number
y email
cuando esté habilitada la verificación automática.
nota
Si ya existe un alias con el mismo número de teléfono, el alias se moverá al número de teléfono del usuario nuevo y el atributo phone_number
del usuario anterior se marcará como no verificado. Lo mismo sucede con las direcciones de correo electrónico. Para evitar que esto suceda, puede usar los grupos de usuarios ListUsers APIpara ver si hay un usuario existente que ya esté usando el número de teléfono o la dirección de correo electrónico del nuevo usuario como alias.
Amazon Cognito transfiere la información del evento a la función de Lambda. A continuación, la función devuelve el mismo objeto de evento a Amazon Cognito con los cambios en la respuesta. En la consola de Lambda puede configurar un evento de prueba con los datos relevantes para el desencadenador de Lambda. El siguiente es un evento de prueba para este código de ejemplo:
Ejemplo de antes de registrarse: denegar el registro si el nombre de usuario tiene menos de cinco caracteres
En este ejemplo se comprueba la longitud del nombre de usuario de una solicitud de registro. El ejemplo devuelve un error si el usuario ha ingresado un nombre de menos de cinco caracteres de longitud.
Amazon Cognito transfiere la información del evento a la función de Lambda. A continuación, la función devuelve el mismo objeto de evento a Amazon Cognito con los cambios en la respuesta. En la consola de Lambda puede configurar un evento de prueba con los datos relevantes para el desencadenador de Lambda. El siguiente es un evento de prueba para este código de ejemplo: