Inicio de sesión social
Auris soporta nueve proveedores de identidad social de serie. Cuando el inicio de sesión social está habilitado para un proveedor, el botón de inicio de sesión correspondiente aparece automáticamente en la página de inicio de sesión alojada — sin cambios en el código del frontend.
El inicio de sesión social usa el mismo flujo OAuth2 Authorization Code + PKCE que el Login Alojado. La configuración del SDK de tu aplicación no cambia — solo se necesita la configuración en la Consola para cada proveedor.
Proveedores compatibles: Google, GitHub, Microsoft, Apple, Facebook, Discord, LinkedIn, Twitter/X, Slack
Configuración en la Consola
Abrir la configuración de Proveedores sociales
En la Consola Auris, ve a Autenticación → Proveedores sociales.
Habilitar un proveedor
Haz clic en el interruptor junto al proveedor que quieres habilitar. Esto muestra los campos de configuración.
Configurar el Client ID y el Client Secret
Introduce las credenciales de la aplicación OAuth obtenidas del portal de desarrolladores del proveedor (consulta las instrucciones específicas de cada proveedor a continuación).
Guardar y probar
Haz clic en Guardar. El botón del proveedor aparece inmediatamente en la página de inicio de sesión alojada. Usa el botón Probar para verificar la configuración antes de publicarla para los usuarios.
No necesitas modificar la inicialización del SDK ni la configuración de redirección al añadir proveedores sociales. La página de inicio de sesión alojada gestiona internamente los flujos OAuth específicos de cada proveedor.
Instrucciones de configuración por proveedor
- Ve a Google Cloud Console → APIs y servicios → Credenciales
- Haz clic en Crear credenciales → ID de cliente de OAuth 2.0
- Establece el tipo de aplicación como Aplicación web
- Añade
https://auth.tudominio.com/api/auth/social/google/callbacka las URIs de redirección autorizadas - Copia el Client ID y el Client Secret en la Consola Auris
Asegúrate de que la Google People API esté habilitada en tu proyecto de Google Cloud.
GitHub
- Ve a Configuración de desarrolladores de GitHub → OAuth Apps → New OAuth App
- Establece la URL de callback de autorización como
https://auth.tudominio.com/api/auth/social/github/callback - Copia el Client ID y genera un Client Secret
Microsoft
- Ve a Azure Portal → Azure Active Directory → Registros de aplicaciones → Nuevo registro
- Establece la URI de redirección como
https://auth.tudominio.com/api/auth/social/microsoft/callback - En Certificados y secretos, crea un nuevo secreto de cliente
- Copia el ID de aplicación (cliente) y el valor del secreto
Para permitir el inicio de sesión desde cualquier tenant de Microsoft (no solo el tuyo), selecciona Cuentas en cualquier directorio organizativo y cuentas Microsoft personales durante el registro de la app.
Apple
- Ve al Portal de desarrolladores de Apple → Certificates, Identifiers & Profiles → Identifiers
- Crea un nuevo Services ID y habilita Sign in with Apple
- Configura la URL de redirección:
https://auth.tudominio.com/api/auth/social/apple/callback - Descarga la clave privada (archivo .p8) desde Keys
- En la Consola Auris, introduce tu Team ID, Key ID, Services ID (client ID) y el contenido de la clave privada
Apple requiere un dominio verificado y una URL HTTPS real para la URI de redirección. Localhost no funciona con Sign in with Apple en modo producción.
- Ve a Meta for Developers → Mis apps → Crear app
- Elige Consumidor como tipo de app y añade el producto Facebook Login
- Establece las URIs de redirección OAuth válidas como
https://auth.tudominio.com/api/auth/social/facebook/callback - Copia el App ID y el App Secret del panel de la app
Asegúrate de que tu app de Facebook esté en modo Live para permitir que usuarios fuera de tu equipo de desarrolladores se autentiquen.
Discord
- Ve al Portal de desarrolladores de Discord → New Application
- Ve a OAuth2 → Redirects y añade
https://auth.tudominio.com/api/auth/social/discord/callback - Copia el Client ID y el Client Secret
- Ve al Portal de desarrolladores de LinkedIn → Crear app
- En Auth, añade
https://auth.tudominio.com/api/auth/social/linkedin/callbacka las URLs de redirección autorizadas - Solicita los scopes OAuth
openid,profileyemail - Copia el Client ID y el Client Secret
Twitter / X
- Ve al Portal de desarrolladores de X → Projects & Apps → Create App
- Habilita OAuth 2.0 en la Configuración de autenticación de usuario
- Establece la URL de callback como
https://auth.tudominio.com/api/auth/social/twitter/callback - Establece los permisos de la app en Read (para acceso básico al perfil)
- Copia el Client ID y el Client Secret
Twitter/X usa OAuth 2.0 con PKCE de forma nativa. Auris gestiona esto de forma transparente.
Slack
- Ve a Slack API → Create New App → From scratch
- En OAuth & Permissions, añade
https://auth.tudominio.com/api/auth/social/slack/callbacka las Redirect URLs - Solicita los scopes:
openid,profile,email - En Basic Information, copia el Client ID y el Client Secret
Uso del SDK
Cuando usas los SDKs de Auris, puedes activar un proveedor social específico directamente — omitiendo la pantalla de selección de proveedor de la página de inicio de sesión alojada:
React
import { useAuris } from '@auris/react'
function SocialLoginButtons() {
const { loginWithSocial } = useAuris()
return (
<div>
<button onClick={() => loginWithSocial('google')}>
Continuar con Google
</button>
<button onClick={() => loginWithSocial('github')}>
Continuar con GitHub
</button>
<button onClick={() => loginWithSocial('microsoft')}>
Continuar con Microsoft
</button>
</div>
)
}Vinculación de cuentas
Cuando un usuario se autentica mediante un proveedor social usando una dirección de email que ya existe en Auris, la identidad social se vincula automáticamente a la cuenta existente. El usuario no crea una cuenta duplicada.
Esto significa que un usuario puede:
- Crear una cuenta con email/contraseña
- Más tarde iniciar sesión con Google (mismo email) — y acceder a la misma cuenta
- Iniciar sesión con cualquiera de los métodos a partir de entonces
Para desactivar la vinculación automática: Establece allowAccountLinking: false en Consola → Autenticación → Proveedores sociales → Avanzado. Cuando está desactivado, se crea una segunda cuenta para la identidad social, o se devuelve un error si la configuración de tu tenant impide emails duplicados.
Datos del perfil de usuario
Los siguientes campos se completan desde los perfiles de los proveedores sociales en el primer inicio de sesión y, opcionalmente, se actualizan en los siguientes:
| Campo | GitHub | Microsoft | Apple | Otros | |
|---|---|---|---|---|---|
| Sí | Sí (si es público) | Sí | Sí | Varía | |
| Nombre | Sí | No | Sí | Sí (solo la primera vez) | Varía |
| Apellido | Sí | No | Sí | Sí (solo la primera vez) | Varía |
| URL de avatar | Sí | Sí | Sí | No | Varía |
| Nombre de usuario | No | Sí (login) | No | No | Varía |
Apple solo proporciona el nombre del usuario en el primer inicio de sesión. Los inicios de sesión posteriores con Apple no reenvían los datos del nombre. Auris almacena el nombre del primer inicio de sesión y lo usa en todas las sesiones posteriores.
Integración con la página de inicio de sesión alojada
Cuando los proveedores sociales están habilitados en la Consola, sus botones de inicio de sesión aparecen automáticamente en la página de inicio de sesión alojada de Auris. No se requieren cambios en el código de tu aplicación. Los botones tienen el estilo acorde a las directrices de marca de cada proveedor.
Para personalizar el orden de los botones o desactivar proveedores específicos en la página alojada (manteniendo disponible el método loginWithSocial() del SDK), usa Consola → Marca → Página de inicio de sesión → Orden de visualización de proveedores sociales.
Guías relacionadas
- Login alojado (PKCE) — El flujo OAuth2 subyacente usado para el inicio de sesión social
- Magic Links — Email sin contraseña como alternativa al inicio de sesión social
- SSO empresarial — Federación SAML 2.0 y OIDC para proveedores de identidad corporativos When social login is enabled for a provider, the corresponding login button appears automatically on the hosted login page — no frontend code changes required.
Social login uses the same OAuth2 Authorization Code + PKCE flow as Hosted Login. Your application SDK configuration does not change — only the Console configuration for each provider is needed.
Supported providers: Google, GitHub, Microsoft, Apple, Facebook, Discord, LinkedIn, Twitter/X, Slack
Console Setup
Open Social Providers settings
In the Auris Console, navigate to Authentication → Social Providers.
Enable a provider
Click the toggle next to the provider you want to enable. This reveals the configuration fields.
Configure Client ID and Client Secret
Enter the OAuth application credentials obtained from the provider’s developer portal (see provider-specific instructions below).
Save and test
Click Save. The provider button appears on the hosted login page immediately. Use the Test button to verify the configuration before releasing to users.
You do not need to modify your SDK initialization or redirect configuration when adding social providers. The hosted login page handles the provider-specific OAuth flows internally.
Provider Setup Instructions
- Go to Google Cloud Console → APIs & Services → Credentials
- Click Create Credentials → OAuth 2.0 Client ID
- Set application type to Web application
- Add
https://auth.yourdomain.com/api/auth/social/google/callbackto Authorized redirect URIs - Copy the Client ID and Client Secret into the Auris Console
Ensure the Google People API is enabled in your Google Cloud project.
GitHub
- Go to GitHub Developer Settings → OAuth Apps → New OAuth App
- Set Authorization callback URL to
https://auth.yourdomain.com/api/auth/social/github/callback - Copy the Client ID and generate a Client Secret
Microsoft
- Go to Azure Portal → Azure Active Directory → App registrations → New registration
- Set the redirect URI to
https://auth.yourdomain.com/api/auth/social/microsoft/callback - Under Certificates & secrets, create a new client secret
- Copy Application (client) ID and the secret value
To allow login from any Microsoft tenant (not just your own), select Accounts in any organizational directory and personal Microsoft accounts during app registration.
Apple
- Go to Apple Developer Portal → Certificates, Identifiers & Profiles → Identifiers
- Create a new Services ID and enable Sign in with Apple
- Configure the redirect URL:
https://auth.yourdomain.com/api/auth/social/apple/callback - Download the private key (.p8 file) from Keys
- In Auris Console, enter your Team ID, Key ID, Services ID (client ID), and the private key contents
Apple requires a verified domain and a real HTTPS URL for the redirect URI. Localhost does not work with Apple Sign In in production mode.
- Go to Meta for Developers → My Apps → Create App
- Choose Consumer as the app type and add the Facebook Login product
- Set Valid OAuth Redirect URIs to
https://auth.yourdomain.com/api/auth/social/facebook/callback - Copy the App ID and App Secret from the app dashboard
Ensure your Facebook app is in Live mode to allow users outside your developer team to authenticate.
Discord
- Go to Discord Developer Portal → New Application
- Navigate to OAuth2 → Redirects and add
https://auth.yourdomain.com/api/auth/social/discord/callback - Copy the Client ID and Client Secret
- Go to LinkedIn Developer Portal → Create App
- Under Auth, add
https://auth.yourdomain.com/api/auth/social/linkedin/callbackto Authorized redirect URLs - Request the
openid,profile, andemailOAuth scopes - Copy the Client ID and Client Secret
Twitter / X
- Go to X Developer Portal → Projects & Apps → Create App
- Enable OAuth 2.0 under User authentication settings
- Set the callback URL to
https://auth.yourdomain.com/api/auth/social/twitter/callback - Set app permissions to Read (for basic profile access)
- Copy the Client ID and Client Secret
Twitter/X uses OAuth 2.0 with PKCE natively. Auris handles this transparently.
Slack
- Go to Slack API → Create New App → From scratch
- Under OAuth & Permissions, add
https://auth.yourdomain.com/api/auth/social/slack/callbackto Redirect URLs - Request scopes:
openid,profile,email - Under Basic Information, copy the Client ID and Client Secret
SDK Usage
When using the Auris SDKs, you can trigger a specific social provider directly — bypassing the hosted login page’s provider selection screen:
React
import { useAuris } from '@auris/react'
function SocialLoginButtons() {
const { loginWithSocial } = useAuris()
return (
<div>
<button onClick={() => loginWithSocial('google')}>
Continue with Google
</button>
<button onClick={() => loginWithSocial('github')}>
Continue with GitHub
</button>
<button onClick={() => loginWithSocial('microsoft')}>
Continue with Microsoft
</button>
</div>
)
}Account Linking
When a user authenticates via a social provider using an email address that already exists in Auris, the social identity is automatically linked to the existing account. The user does not create a duplicate account.
This means a user can:
- Create an account with email/password
- Later log in with Google (same email) — and land in the same account
- Log in with either method going forward
To disable automatic linking: Set allowAccountLinking: false in Console → Authentication → Social Providers → Advanced. When disabled, a second account is created for the social identity, or an error is returned if your tenant configuration prevents duplicate emails.
User Profile Data
The following fields are populated from social provider profiles on first login, and optionally refreshed on subsequent logins:
| Field | GitHub | Microsoft | Apple | Others | |
|---|---|---|---|---|---|
| Yes | Yes (if public) | Yes | Yes | Varies | |
| First Name | Yes | No | Yes | Yes (first time only) | Varies |
| Last Name | Yes | No | Yes | Yes (first time only) | Varies |
| Avatar URL | Yes | Yes | Yes | No | Varies |
| Username | No | Yes (login) | No | No | Varies |
Apple only provides the user’s name on the very first login. Subsequent logins from Apple do not resend name data. Auris stores the name from the first login and uses it on all subsequent sessions.
Hosted Login Page Integration
When social providers are enabled in the Console, their login buttons appear automatically on the Auris hosted login page. No changes to your application code are required. The buttons are styled to match the provider’s brand guidelines.
To customize button order or disable specific providers from the hosted page (while keeping the SDK loginWithSocial() method available), use Console → Branding → Login Page → Social Provider Display Order.
Related Guides
- Hosted Login (PKCE) — The underlying OAuth2 flow used for social login
- Magic Links — Passwordless email as an alternative to social login
- Enterprise SSO — SAML 2.0 and OIDC federation for corporate identity providers