Usando Logto como un proveedor de identidad de terceros (IdP)
Logto puede ser utilizado como un proveedor de identidad para tus aplicaciones de terceros. Este artículo explica cómo configurar Logto como un IdP.
Logto es una plataforma de gestión de identidades y accesos (IAM) basada en la nube que proporciona un conjunto integral de capacidades de autenticación, autorización y gestión de usuarios. Puede ser utilizado como un proveedor de identidad (IdP) para tus aplicaciones o servicios de terceros, permitiéndote autenticar usuarios y gestionar su acceso a estas aplicaciones.
En este artículo, explicaremos cómo configurar Logto como un IdP para tus aplicaciones de terceros y cómo usarlo para autenticar usuarios y gestionar sus permisos.
¿Qué es un proveedor de identidad (IdP)?
Un Proveedor de Identidad (IdP) es un servicio que verifica las identidades de los usuarios y gestiona sus credenciales de inicio de sesión. Después de confirmar la identidad de un usuario, el IdP genera tokens de autenticación o aseveraciones y permite al usuario acceder a varias aplicaciones o servicios sin necesidad de iniciar sesión nuevamente. Esencialmente, es el sistema al que recurrir para gestionar las identidades y permisos de los empleados en tu empresa.
¿Qué es un IdP de terceros?
Un IdP de terceros es un IdP que es propiedad de una organización diferente a la del proveedor del servicio (SP). El SP está solicitando acceso a los datos del usuario que no son de su propiedad. Por ejemplo, si estás usando Logto como tu IdP y te conectas a una aplicación social de terceros, entonces Logto es un IdP de terceros para la aplicación social.
En el mundo real, muchas aplicaciones utilizan Google, Facebook u otros servicios de terceros como su IdP. Esto se llama Inicio de Sesión Único (SSO). Para obtener más información sobre SSO, por favor consulta nuestro artículo CIAM 101: Autenticación, Identidad, SSO.
Ahora veamos cómo integrar Logto como un IdP de terceros para tus aplicaciones.
Cómo integrar un IdP de terceros para tus aplicaciones y sus mejores prácticas
Requisitos previos
-
Antes de comenzar, necesitas tener una cuenta de Logto. Si no tienes una, puedes registrarte para obtener una cuenta gratuita en Logto.
-
Una aplicación de terceros para la que quieras configurar Logto como un IdP. Los usuarios pueden iniciar sesión con sus cuentas de Logto.
Crear una aplicación OIDC de terceros en Logto
Para crear una aplicación OIDC de terceros en Logto, sigue estos pasos:
-
Ve a la Consola de Logto y navega a la página de Aplicaciones.
-
Haz clic en el botón crear aplicación ubicado en la esquina superior derecha de la página. Selecciona "Aplicación de terceros -> OIDC" como el tipo de aplicación.
-
Completa los detalles básicos de la aplicación, incluyendo el nombre y la descripción, en el modal emergente. Haz clic en el botón crear. Esto generará una nueva entidad de aplicación de terceros en Logto y pasará a la página de detalles.
Configurar la configuración de OIDC
Sigue estos pasos para configurar los ajustes de OIDC en la página de detalles de la aplicación:
-
Navega a la página de detalles de la aplicación de la aplicación de terceros que acabas de crear.
-
Proporciona un URI de redirección de tu aplicación de terceros. Esta es la URL a la que la aplicación de terceros redirigirá a los usuarios después de que sean autenticados por Logto. Usualmente puedes encontrar esta información en la página de configuración de conexión IdP de la aplicación de terceros.
(Logto admite múltiples URIs de redirección. Puedes agregar más URIs de redirección haciendo clic en el botón Agregar otro.)
-
Copia el ID de cliente y el secreto de cliente de Logto e ingrésalos en la página de configuración de conexión IdP de tu proveedor de servicios.
-
Copia el endpoint de descubrimiento OIDC de Logto e ingrésalo en la página de configuración de conexión IdP de tu proveedor de servicios.
El endpoint de descubrimiento OIDC es una URL que el proveedor de servicios puede usar para descubrir los detalles de configuración de OIDC del IdP. Contiene información como el endpoint de autorización, el endpoint token y el endpoint de información de usuario que tu proveedor de servicios necesita para autenticar usuarios con Logto.
Punto de verificación
Con todos los detalles de configuración OIDC en su lugar, ahora puedes usar Logto como un IdP de terceros para tus aplicaciones. Prueba la integración en tu aplicación de terceros para asegurarte de que los usuarios puedan iniciar sesión con sus cuentas de Logto.
Gestionar permisos de aplicaciones
A diferencia de las aplicaciones de primera, las aplicaciones de terceros son aplicaciones que no son propiedad de Logto. Por lo general, son propiedad de proveedores de servicios de terceros que utilizan Logto como un IdP externo para autenticar usuarios. Por ejemplo, Slack, Zoom y Notion son todas aplicaciones de terceros.
Es importante asegurarse de otorgar los permisos correctos a las aplicaciones de terceros cuando solicitan acceso a la información de tus usuarios. Logto te permite gestionar los permisos de tus aplicaciones de terceros, incluyendo los alcances del perfil de usuario, los alcances de recursos API y los alcances de la organización.
Solicitar alcances no habilitados resultará en un error. Esto es para asegurar que la información de tus usuarios esté protegida y sólo sea accesible por las aplicaciones de terceros en las que confías. Una vez que los alcances están habilitados, las aplicaciones de terceros pueden solicitar acceso a estos alcances habilitados. Estos alcances se mostrarán en la página de consentimiento para que tus usuarios revisen y concedan acceso a las aplicaciones de terceros.
Por favor consulta nuestro artículo Pantalla de consentimiento del usuario para obtener más detalles sobre qué es una pantalla de consentimiento del usuario.
Agregar permisos a tus aplicaciones de terceros
Ve a la página de Detalles de la aplicación y navega a la pestaña de Permisos. Haz clic en el botón Agregar permisos para agregar los permisos de tus aplicaciones de terceros.
Permisos de usuario (alcances del perfil de usuario)
Esos permisos son standard OIDC y los alcances esenciales del perfil de usuario de Logto utilizados para acceder a las reclamaciones de usuario. Las reclamaciones de usuario se devolverán en el token ID y el endpoint de información de usuario en consecuencia.
Permisos de recursos API (alcances de recursos API)
Logto proporciona control de acceso basado en roles (RBAC) para los recursos API. Los recursos API son los recursos que son propiedad de tu servicio y están protegidos por Logto. Puedes asignar alcances de API personalizados a las aplicaciones de terceros para acceder a tus recursos API. Si no sabes cómo usar estos alcances de recursos API, por favor consulta nuestras guías de RBAC y protege tu API.
Puedes crear y gestionar tus alcances de recursos API en la página de Recursos API en la consola de Logto.
Permisos de organización (alcances de organización)
Los permisos de organización son los alcances que se definen exclusivamente para las organizaciones de Logto. Se utilizan para acceder a la información y recursos de la organización. Para aprender más sobre las organizaciones y cómo usar los alcances de organización, por favor consulta nuestra guía de organización.
Para crear y gestionar tus alcances de organización, ve a la página de Plantilla de organización en la consola de Logto. Por favor ve Configurar organizaciones para más detalles.
Página de consentimiento
Una vez que todos los permisos están habilitados, las aplicaciones de terceros pueden solicitar acceso a los permisos habilitados. Estos permisos se mostrarán en la página de consentimiento para que tus usuarios los revisen y concedan acceso a las aplicaciones de terceros.
Al hacer clic en el botón Autorizar, el usuario concederá acceso a las aplicaciones de terceros para acceder a aquellos permisos solicitados.
Personalizar la pantalla de consentimiento
Por último, pero no menos importante, es importante asegurarse de que la información de marca del tercero y el enlace de privacidad se muestren correctamente a los usuarios cuando sean redirigidos a la página de consentimiento de la aplicación de terceros.
Además de la experiencia de inicio de sesión universal de las aplicaciones de primera, Logto te permite personalizar esta información de marca adicional de tus aplicaciones de terceros, incluyendo el nombre de la aplicación, el logotipo y el enlace a los términos.
-
Ve a la Consola de Logto y navega a la página de detalles de la aplicación de terceros.
-
Navega a la pestaña de Branding.
- Nombre a mostrar: El nombre de la aplicación de terceros que se mostrará en la página de consentimiento. Representará el nombre de la aplicación de terceros que está solicitando acceso a la información de tus usuarios. Se usará el nombre de la aplicación si este campo se deja vacío.
- Logotipo: El logotipo de la aplicación de terceros que se mostrará en la página de consentimiento. Representará la marca de la aplicación de terceros que está solicitando acceso a la información de tus usuarios. Tanto el logotipo de la aplicación de terceros como el logotipo de la experiencia de inicio de sesión universal de Logto se mostrarán en la página de consentimiento si ambos se proporcionan.
- Logotipo oscuro: Solo disponible cuando la experiencia de inicio de sesión en modo oscuro está habilitada. Gestiona los ajustes de modo oscuro en la página de Experiencia de inicio de sesión.
- Enlace de términos: El enlace de términos de la aplicación de terceros que se mostrará en la página de consentimiento.
- Enlace de privacidad: El enlace de privacidad de la aplicación de terceros que se mostrará en la página de consentimiento.
Resumen
¡Felicidades! Has integrado efectivamente Logto como un IdP de terceros para tus aplicaciones. Al configurar los ajustes de OIDC, has establecido un mecanismo robusto y seguro para la autenticación y autorización de usuarios. Con Logto en su lugar, ahora tienes un proceso fluido para autenticar usuarios y regular su acceso a cualquier aplicación de terceros.