Desarrolladores de OneSpan Sign: Notificación de eventos OAuth para Salesforce - Parte 2

Duo Liang, 7 de April de 2021

En la reciente versión, OneSpan Sign introdujo un nuevo servicio de devolución de llamada que implementa el flujo de fichas de actualización de Salesforce OAuth 2.0, y ahora es posible configurar un receptor de llamadas en Salesforce En la parte 1 de esta serie de blogs, demostramos cómo crear una aplicación conectada en Salesforce y recuperar un token de actualización que funcione.

Continuando donde lo dejamos, en este blog, mostraremos cómo validar, revocar y rotar el token de actualización y cómo suministrar el token de actualización a OneSpan Sign vía API. Comencemos

Pruebe su ficha de actualización

Al final del blog anterior, hemos seguido los pasos para recuperar un token de actualización. Antes de suministrarlo a OneSpan Sign, podemos realizar una prueba rápida en el local, construyendo una URL de la siguiente plantilla y abriéndola en un navegador:

https://login.salesforce.com/services/oauth2/token?client_id={your_client_id}&grant_type=refresh_token&refresh_token={the_refresh_token}

Esta API de Salesforce renueva la sesión seguida del flujo de token de actualización de OAuth 2.0, que es similar a la llamada que el servicio OneSpan Sign utiliza detrás de la escena. Un token de actualización válido devuelve un token de acceso que aparece como tal:

4-7-1

Refrescar la rotación de fichas

Bajo la política de seguridad por defecto, el token de actualización será válido hasta que sea revocado. Por lo tanto, es importante rotar el token de actualización a menudo o, alternativamente, actualizar la configuración de la política de OAuth, para evitar cualquier riesgo potencial de seguridad

Para revocar el token de actualización actual, construya el siguiente enlace y ábralo en su navegador:

https://login.salesforce.com/services/oauth2/revoke?token={su_ficha_de_actualización}

El navegador no devolverá nada, pero puedes verificar la revocación reproduciendo la sección anterior.

También puede actualizar la configuración de la política de OAuth si ha seguido los siguientes pasos:

  • En lightning experience, navega a configuración y busca "App Manager"
  • Busca la app conectada que hemos registrado, despliega el desplegable y elige "Gestionar"
  • Pulse el botón "Editar políticas" y busque la sección "Políticas de OAuth"

 4-7-2

Una vez que el token de actualización fue revocado o expiró, recupere el último token de actualización, actualícelo a través del servicio OneSpan Sign (cubierto en la sección siguiente) y realice pruebas de humo para evitar el impacto en su negocio debido al tiempo de inactividad

Actualizar el servicio de devolución de llamadas de OneSpan Sign

Una vez que haya configurado completamente la aplicación conectada y expuesto un punto final de devolución de llamada, debe actualizar el servicio de devolución de llamada de OneSpan Sign con sus configuraciones. Para ello se utilizan las siguientes llamadas a la API:

Petición HTTP

POST /api/callback/conectores/salesforceOauth2

Encabezados HTTP

Content-Type: application/json Accept: application/json Authorization: Basic api_key

Ejemplo de carga útil

{ "url": "https://yourdomain.salesforce.com/services/apexrest/oss/callback", "events": ["DOCUMENT_SIGNED", "EMAIL_BOUNCE", "KBA_FAILURE", "PACKAGE_ACTIVATE", "PACKAGE_ARCHIVE", "PACKAGE_ATTACHMENT", "PACKAGE_COMPLETE", "PACKAGE_CREATE", "PACKAGE_DEACTIVATE", "PACKAGE_DECLINE", "PACKAGE_DELETE", "PACKAGE_EXPIRE", "PACKAGE_OPT_OUT", "PACKAGE_READY_FOR_COMPLETE", "PACKAGE_RESTORE", "PACKAGE_TRASH", "ROLE_REASSIGN", "SIGNER_COMPLETE", "SIGNER_LOCKED", "TEMPLATE_CREATE"], "key": "eyJob3N0IjoibG9naW4uc2FsZXNmb3JjZS5jb20iLCJjbGllbnRfaWQiOiIzTVZHOWRaSm94eHhSeXFpcGpHY2lYbzU2MUZnIiwicmVmcmVzaF90b2tlbiI6IjVBZXA4NjF2eHh4UTYzeHE3MG85dXNEeiJ9" }

Nota:

  • "url" apunta a la URL de devolución de llamada. En el próximo blog demostraremos cómo exponer un punto final REST de Salesforce.
  • Puede añadir cualquier evento de devolución de llamada que aparezca en la guía "Configuración de las notificaciones de devolución de llamada".
  • "key" es una estructura codificada en base64 que sigue el siguiente formato:

 

{"host": "login.salesforce.com", "client_id": "3MVG9dZJoxxxRyqipjGciXo561Fg", "refresh_token": "5Aep861vxxxQ63xq70o9usDz"}
  • El "host" se refiere a "test.salesforce.com" (sandbox de SFDC) o "login.salesforce.com" (producción/desarrollo de SFDC). No es una URL completa (sin "https://") y no hace referencia a su propio dominio.

Después, puede comprobar la configuración actual de la devolución de llamada con una llamada GET:

Petición HTTP

GET /api/callback/conectores/salesforceOauth2

Encabezados HTTP

Content-Type: application/json Accept: application/json Authorization: Basic api_key

Es importante tener en cuenta que puede definir varias configuraciones de devolución de llamada al mismo tiempo: devolución de llamada por defecto (con autenticación básica), configuración de devolución de llamada de Salesforce (salesforceOauth2) o configuración de otros conectores como SharePoint o Dynamics. Sin embargo, el oyente de la devolución de llamada que recibirá la notificación está determinado por los datos de "origen" en su paquete JSON

Por ejemplo, en la versión actual (11.40), si se crea una transacción desde el portal del remitente o, de forma equivalente, lleva "data" > "origin" : "OSS" en el JSON de la transacción, una vez que se desencadene un evento de interés, el marco de devolución de llamada entregará la notificación al oyente de Salesforce, que está registrado como "salesforceOauth2".

Ahí está. A través del blog de hoy, usted debería ser capaz de recuperar, validar y revocar un token de actualización y suministrarlo a OneSpan Sign a través de la API de servicio de devolución de llamada. En el próximo blog, terminaremos esta serie y os mostraremos un ejemplo de integración con Salesforce, donde implementaremos un Apex Web Services funcionando como un callback listener, y probaremos todo el proceso de integración. No se pierda la oportunidad

Si tiene alguna pregunta sobre este blog o cualquier otra cosa relacionada con la integración de OneSpan Sign en su aplicación, visite los foros de la comunidad de desarrolladores. Su opinión nos importa

Comunidad de desarrolladores de OneSpan Sign

Comunidad de desarrolladores de OneSpan Sign

¡Únase a la comunidad de desarrolladores de OneSpan Sign! Foros, blogs, documentación, descargas de SDK y más.

Únete hoy