Cómo implementar Salesforce SSO usando OAuth

Publicado: 2023-11-23

SSO, también conocido como inicio de sesión, evita la necesidad de que los usuarios inicien sesión en todos los sistemas. Configura un sistema para que dependa de otro para autenticar a los usuarios. El sistema que autentica a los usuarios se conoce como proveedor de identidad y el sistema que confía en el proveedor de identidad para la autenticación se conoce como proveedor de servicios.

También puede implementar Salesforce SSO para disminuir la cantidad de superficies de ataque, ya que los usuarios solo inician sesión una vez al día y usan un conjunto de credenciales. Además, reducir el inicio de sesión a un conjunto de credenciales mejora la seguridad empresarial.

Podemos implementar Salesforce SSO utilizando un proveedor de identidad externo, autenticación delegada, OAuth y más. Puede elegir cualquier método según la infraestructura actual de su organización, las prácticas de administración de usuarios y los requisitos de seguridad. Es necesario comprender el proceso y luego seguir adelante a fondo.

En esta publicación, implementaremos Salesforce SSO usando OAuth (un protocolo abierto que autoriza a una aplicación cliente a acceder a datos de un recurso protegido a través del intercambio de tokens).

Tabla de contenido

Implemente Salesforce SSO: comencemos el proceso

Primero, necesitamos crear la aplicación Connect para Salesforce SSO. Una aplicación conectada es un marco que permite que una aplicación externa se integre con Salesforce mediante API y protocolos estándar, como SAML, OAuth y OpenID connect. Además, las aplicaciones conectadas utilizan estos protocolos para autenticar, autorizar y proporcionar inicio de sesión único (SSO) para aplicaciones externas. Estas aplicaciones activan un SSO o establecen políticas de seguridad para restringir a qué datos pueden acceder las aplicaciones de terceros desde su organización.

Fuerza de ventas

Las aplicaciones externas que están integradas con Salesforce pueden ejecutarse en la plataforma de éxito del cliente, otras plataformas, dispositivos o suscripciones SaaS.

Por ejemplo, cuando inicia sesión en su aplicación móvil Salesforce y ve sus datos de su organización de Salesforce, está utilizando una aplicación conectada.

Al capturar metadatos sobre una aplicación externa, una aplicación conectada le indica a Salesforce qué protocolo (SAML, OAuth y OpenID Connect) utiliza la aplicación externa y dónde se ejecuta. Luego, Salesforce puede otorgar acceso a la aplicación externa a sus datos y adjuntar políticas que definan restricciones de acceso, como cuándo caduca el acceso de la aplicación. Salesforce también puede auditar el uso de las aplicaciones conectadas.

¿Cómo puede mi Salesforce.Org utilizar aplicaciones conectadas?

  • Acceda a datos con integración API
  • Integre proveedores de servicios con Salesforce

Acceda a datos con integración API:

Cuando los desarrolladores o proveedores de software independientes (ISV) crean aplicaciones móviles o basadas en web que necesitan extraer datos de su organización de Salesforce, puede utilizar aplicaciones conectadas como clientes para solicitar estos datos. Para hacerlo, crea una aplicación conectada que se integra con las API de Salesforce.

Lea también: Cómo conectar Pipedrive y la integración de Salesforce

Integre proveedores de servicios con Salesforce:

Cuando Salesforce actúa como su proveedor de identidad, puede utilizar una aplicación conectada para integrar su proveedor de servicios con su organización. Dependiendo de la configuración de su organización, puede utilizar uno de estos métodos.

Utilice una aplicación conectada con SAML 2.0 para integrar un proveedor de servicios con su organización. Salesforce admite el inicio de sesión único (SSO) de SAML cuando el proveedor de servicios o el proveedor de identidad inicia el flujo.

¿Qué papel juego con las aplicaciones conectadas?

En pocas palabras, los desarrolladores crean y configuran flujos de autorización para aplicaciones conectadas, y los administradores establecen políticas y permisos para controlar el uso de las aplicaciones conectadas. Pero hay mucho más en cada rol.

  • Desarrollador de aplicaciones conectadas
  • Administrador de aplicaciones conectadas

Los pasos para usar una aplicación conectada:

Hay algunos pasos que debes seguir. Estos pasos se describen a continuación:

  • 1. Configuración del dominio
  • 2. El perfil debe acceder al Objeto de Usuario.
  • 3. Configuración de la aplicación conectada

Pasos de configuración del dominio:

Pasos de configuración del dominio

Vaya a Configuración -> Cuadro de búsqueda rápida -> Administración de dominios -> Haga clic en Dominios -> Crear nuevo dominio (si aún no existe)

En mi caso el nombre de dominio es: gst-idp-dev-ed

Objeto de usuario de acceso al perfil

El perfil que está utilizando para cualquier usuario puede ser cualquiera que tenga acceso al Usuario.

  • Por ejemplo, aquí hay un perfil " Usuario estándar ". Al hacer clic en este perfil, puede agregar usuarios a este perfil.

Configuración -> Cuadro de búsqueda rápida -> Perfiles -> Perfil de usuario estándar -> Haga clic en Usuarios estándar o cualquier otro perfil.

Perfil de usuario estándar

Agregue usuarios externos a cualquier perfil, por ejemplo, estoy trabajando en Usuario estándar.

  • O mientras crea un usuario, puede asignar este perfil a Usuario.

Haga clic en Usuarios asignados Usuario estándar

Haga clic en Nuevo usuario y luego agregue usuarios. Usuario estándar de Salesforce

  • O puede crear un nuevo perfil personalizado que debe acceder al objeto de usuario y luego usarlo.

Configuración -> Cuadro de búsqueda rápida -> Crear nuevo usuario o editar usuario existente -> Asignar perfil de usuario estándar o el perfil personalizado que haya creado.

para personalizar Ir a:

para personalizar Ir a

Configuración -> Cuadro de búsqueda rápida -> Perfiles -> Crear nuevo perfil con permiso de acceso de usuarios.

Pasos de configuración de la aplicación conectada:

Pasos de configuración de la aplicación conectada

Configuración -> Cuadro de búsqueda rápida -> Administrar aplicaciones -> Aplicación conectada -> Crear aplicación conectada

GST_IDP

En mi caso, la etiqueta de la aplicación es GST_IDP, puedes dar cualquier nombre y versión.

Detalles dentro de la aplicación conectada: Detalles dentro de la aplicación conectada

La clave del consumidor y el secreto del consumidor son generados por el propio Salesforce.

contratar desarrolladores de salesforce

API de llamadas al sistema GST

Accede a tu información básica (id, perfil, correo electrónico, dirección, teléfono)
Acceso completo (completo)

Esta URL será utilizada por el sistema GST.

Ámbitos de OAuth seleccionados:

URL de devolución de llamada:

http://{Nombre de dominio}/Cuenta/ExternalLoginCallback

El nombre de dominio será reemplazado por la URL del sitio, mediante la cual accederán a la aplicación.
Ex:
https://gme-gst-test.bp.com/Account/ExternalLoginCallback

Clave del consumidor y secreto del consumidor

1. Esto devolverá la clave del consumidor y el secreto del consumidor.

pasar clave de consumidor, secreto de consumidor

2. Luego debemos pasar la clave del consumidor, el secreto del consumidor y el nombre de dominio a la API .net como parámetros.

configuración del sitio remoto

Nota: Siempre que realice la integración con cualquier otro sitio mediante API, deberá configurar la URL del sitio en la configuración del sitio remoto.
Si está buscando consultores experimentados en Salesforce para servicios de desarrollo de Salesforce, póngase en contacto con nosotros.

Lea también: Beneficios de la implementación de Salesforce Commerce Cloud

Conclusiones clave

Ahora ya sabe cómo implementar SSO utilizando OAuth para facilitar el inicio de sesión de los usuarios en cada sistema. Puede que le resulte sencillo lograrlo, pero créanos, se necesita experiencia. Puede conectarse con una empresa líder en consultoría de Salesforce que ofrece una orientación perfecta para aprovechar al máximo la plataforma.

Cuando Emizentech está aquí para brindarle el mejor servicio, no necesita ir de aquí para allá para encontrar la mejor compañía. Contamos con un equipo de consultores experimentados de Salesforce que ayudan a clientes de todo el mundo a realizar sus proyectos de Salesforce.