Proceso de entrega de contraseña simultánea personalizada
Si utiliza un proveedor de entrega de contraseña simultánea personalizada (OTP) en vez del proveedor predeterminado de Salesforce, su proveedor envía mensajes OTP a usuarios finales.
Ediciones necesarias
| Disponible en: Salesforce Classic (no disponible en todas las organizaciones) y Lightning Experience |
| Disponible en: Professional Edition, Enterprise Edition, Unlimited Edition y Developer Edition |
La entrega de OTP personalizada se basa en un controlador de Apex que implementa la interfaz Auth.CustomOneTimePasswordDeliveryHandler. La interfaz utiliza el método sendOneTimePassword, donde pasa múltiples parámetros, incluyendo la OTP generada por Salesforce, el número de teléfono del usuario, el Id. de usuario y el Id. de sitio de Experience Cloud, entre otros parámetros. Puede utilizar código personalizado para redactar el contenido del mensaje. Para enviar el mensaje, su gestor realiza una llamada de API a un extremo de mensajería alojado en el proveedor y luego gestiona la respuesta.
Este proceso puede comenzar siempre que requiera que un usuario externo verifique su identidad utilizando SMS. El punto de entrada depende de su caso de uso. Estos casos de uso admiten la verificación de identidad con SMS.
- Autenticación de múltiples factores
- Inicio de sesión sin contraseña
- Registro sin contraseña
- Inscripción automática
- Inicio de sesión sin contraseña desatendido
- Registro sin contraseña desatendido
Por ejemplo, si utiliza el inicio de sesión sin contraseña, este flujo puede comenzar cuando un usuario vaya a la página de inicio de sesión de su sitio de Experience Cloud e ingrese su número de teléfono para iniciar sesión.
- Salesforce llama al método
sendOneTimePassworden el controlador Apex de entrega de OTP personalizado. - Su implementación de Apex utiliza el método
sendOneTimePasswordpara enviar una solicitud autenticada al extremo de llamada del proveedor. La solicitud incluye el Id. del usuario, su número de teléfono, el contenido del mensaje, la OTP de Salesforce y cualquier otro parámetro que requiera el proveedor.
Nota Su implementación Apex es responsable de conectar con el proveedor y entregar el mensaje SMS. Salesforce no proporciona esta función de forma predeterminada. - El proveedor devuelve una respuesta, que su controlador Apex captura y procesa. El modo en que procesa la respuesta depende de su proveedor.
- Si la respuesta es correcta, su controlador devuelve el valor de enumeración
Auth.CustomOneTimePasswordDeliveryResultSUCCESS. - El proveedor envía una OTP al número de teléfono del usuario.
- El usuario ingresa la OTP en su formulario de verificación de sitio de Experience Cloud.
- Salesforce verifica la OTP. Este paso depende de su caso de uso. Por ejemplo, para el inicio de sesión sin contraseña, puede utilizar el método
verifyPasswordlessLoginen la claseSystem.UserManagement. - La identidad del usuario se registra o inicia sesión, dependiendo de su caso de uso.

