eQuantic Auth
Self-hosted · OAuth 2.1 · OpenID Connect
Identidad para personas,servicios y agentes de IA.
Identidad para personas,servicios y agentes de IA.
Un proveedor de identidad fiel a los estándares que instalas en tu propio host .NET con una sola llamada. Passkeys antes que contraseñas, sin concesiones heredadas que proteger para siempre — y sin precio por usuario.
Solo PKCE S256
RFC 9700 auditado
OWASP ASVS L2
.NET 10 · PostgreSQL
Solo PKCE S256
RFC 9700 auditado
OWASP ASVS L2
.NET 10 · PostgreSQL
FLUJO DE AUTENTICACIÓNinicio de sesión · id.acme.com
Garantía
—
Flujo iniciadoAún sin identificador — la enumeración no tiene nada que sondear
esperando
PasskeyWebAuthn · usuario verificado · AAL2 por sí sola
·
Consentimientoopenid · profile · invoices:read
·
Tokens emitidosAcceso · refresh rotativo · token de ID
·
Token de acceso · decodificadopendiente
{
"iss": "https://id.acme.com",
"sub": "0199c2e4-7b1a-7c3e-9f2d…",
"aud": "invoices-api",
"org": "acme",
"role": "owner",
"scope": "openid profile invoices:read",
"cnf": { "x5t#S256": "bwcK0esc3A…" }
}
eQuantic Auth
Self-hosted · OAuth 2.1 · OpenID Connect
Identidad para personas,servicios y agentes de IA.
Identidad para personas,servicios y agentes de IA.
Un proveedor de identidad fiel a los estándares que instalas en tu propio host .NET con una sola llamada. Passkeys antes que contraseñas, sin concesiones heredadas que proteger para siempre — y sin precio por usuario.
Solo PKCE S256
RFC 9700 auditado
OWASP ASVS L2
.NET 10 · PostgreSQL
Solo PKCE S256
RFC 9700 auditado
OWASP ASVS L2
.NET 10 · PostgreSQL
FLUJO DE AUTENTICACIÓNinicio de sesión · id.acme.com
Garantía
—
Flujo iniciadoAún sin identificador — la enumeración no tiene nada que sondear
esperando
PasskeyWebAuthn · usuario verificado · AAL2 por sí sola
·
Consentimientoopenid · profile · invoices:read
·
Tokens emitidosAcceso · refresh rotativo · token de ID
·
Token de acceso · decodificadopendiente
{
"iss": "https://id.acme.com",
"sub": "0199c2e4-7b1a-7c3e-9f2d…",
"aud": "invoices-api",
"org": "acme",
"role": "owner",
"scope": "openid profile invoices:read",
"cnf": { "x5t#S256": "bwcK0esc3A…" }
}
01
Identidad lista para agentes
Los agentes de IA son clientes de pleno derecho. Se registran solos, actúan en nombre de una persona mediante el intercambio de tokens y le preguntan antes de hacer algo irreversible.
RFC 7591 · RFC 8693 · CIBA · RFC 9728
02
Sin contraseñas por defecto
Las passkeys son la credencial principal. Los enlaces mágicos y los códigos de un solo uso son la alternativa. Las contraseñas se admiten — nunca se exigen.
WebAuthn · FIDO2 · RFC 6238
03
OAuth 2.1 como base
PKCE en cada solicitud de autorización, solo S256. Sin flujo implícito, sin híbrido, sin concesión por contraseña — ni siquiera detrás de un flag.
PKCE S256 · PAR · mTLS
04
La autoridad solo se reduce
Permisos basados en declaraciones, con comodines de un solo sentido. Una solicitud que ampliaría el acceso se rechaza de plano — nunca se recorta en silencio para que encaje.
resource:action · roles · luego ReBAC
01
Identidad lista para agentes
Los agentes de IA son clientes de pleno derecho. Se registran solos, actúan en nombre de una persona mediante el intercambio de tokens y le preguntan antes de hacer algo irreversible.
RFC 7591 · RFC 8693 · CIBA · RFC 9728
02
Sin contraseñas por defecto
Las passkeys son la credencial principal. Los enlaces mágicos y los códigos de un solo uso son la alternativa. Las contraseñas se admiten — nunca se exigen.
WebAuthn · FIDO2 · RFC 6238
03
OAuth 2.1 como base
PKCE en cada solicitud de autorización, solo S256. Sin flujo implícito, sin híbrido, sin concesión por contraseña — ni siquiera detrás de un flag.
PKCE S256 · PAR · mTLS
04
La autoridad solo se reduce
Permisos basados en declaraciones, con comodines de un solo sentido. Una solicitud que ampliaría el acceso se rechaza de plano — nunca se recorta en silencio para que encaje.
resource:action · roles · luego ReBAC
01
Identidad lista para agentes
Los agentes de IA son clientes de pleno derecho. Se registran solos, actúan en nombre de una persona mediante el intercambio de tokens y le preguntan antes de hacer algo irreversible.
RFC 7591 · RFC 8693 · CIBA · RFC 9728
02
Sin contraseñas por defecto
Las passkeys son la credencial principal. Los enlaces mágicos y los códigos de un solo uso son la alternativa. Las contraseñas se admiten — nunca se exigen.
WebAuthn · FIDO2 · RFC 6238
03
OAuth 2.1 como base
PKCE en cada solicitud de autorización, solo S256. Sin flujo implícito, sin híbrido, sin concesión por contraseña — ni siquiera detrás de un flag.
PKCE S256 · PAR · mTLS
04
La autoridad solo se reduce
Permisos basados en declaraciones, con comodines de un solo sentido. Una solicitud que ampliaría el acceso se rechaza de plano — nunca se recorta en silencio para que encaje.
resource:action · roles · luego ReBAC
INSTALACIÓN
Tres paquetes. Una llamada para entrar, una para salir.
Tres paquetes. Una llamada para entrar, una para salir.
La API y las pantallas nunca se referencian entre sí, así que instalar una nunca arrastra la otra. Elige la forma que encaje con tu host.
A TU CRITERIO, A PROPÓSITOTu logger, adónde se exporta la telemetría y si el documento OpenAPI tiene UI. El servidor lo instrumenta todo y no decide nada de eso por ti.
$ dotnet add package eQuantic.Auth
using eQuantic.Auth.Hosting; builder.Services.AddAuthServer(builder.Configuration, builder.Environment, auth => auth .WithPages(pages => pages.WithBrand("Acme ID"))); var app = builder.Build();app.UseAuthServer();app.Run();
Proveedor OAuth 2.1 y OpenID Connect sobre OpenIddict
Inicio de sesión, segundo factor, consentimiento y confirmación de dispositivo
Verificación de email, restablecimiento de contraseña, 404 y 500 con tu marca
Proveedor OAuth 2.1 y OpenID Connect sobre OpenIddict
Inicio de sesión, segundo factor, consentimiento y confirmación de dispositivo
Verificación de email, restablecimiento de contraseña, 404 y 500 con tu marca
A TU CRITERIO, A PROPÓSITOTu logger, adónde se exporta la telemetría y si el documento OpenAPI tiene UI. El servidor lo instrumenta todo y no decide nada de eso por ti.
$ dotnet add package eQuantic.Auth
using eQuantic.Auth.Hosting; builder.Services.AddAuthServer(builder.Configuration, builder.Environment, auth => auth .WithPages(pages => pages.WithBrand("Acme ID"))); var app = builder.Build();app.UseAuthServer();app.Run();
Proveedor OAuth 2.1 y OpenID Connect sobre OpenIddict
Inicio de sesión, segundo factor, consentimiento y confirmación de dispositivo
Verificación de email, restablecimiento de contraseña, 404 y 500 con tu marca
Proveedor OAuth 2.1 y OpenID Connect sobre OpenIddict
Inicio de sesión, segundo factor, consentimiento y confirmación de dispositivo
Verificación de email, restablecimiento de contraseña, 404 y 500 con tu marca
Se distribuye a través del feed de paquetes de eQuantic Space. Tu Program.cs es toda la integración.
IDENTIDAD LISTA PARA AGENTES
Los agentes son clientes, no un parche.
Los agentes son clientes, no un parche.
Un agente de IA recibe el mismo protocolo que una aplicación propia — y la misma regla que rige cada token: la autoridad solo se reduce.
UN AGENTE DE FACTURACIÓN PAGA UNA FACTURA EN NOMBRE DE ADA
5 llamadas
1
AgenteTu API
RFC 9728
GET /.well-known/oauth-protected-resourceDescubre qué servidor de autorización protege la API
2
AgenteeQuantic Auth
RFC 7591
POST /connect/registerUn client_id y un token de registro — mostrados una vez, guardados como hash
3
AgenteeQuantic Auth
RFC 8693
POST /connect/token grant_type=token-exchangeActúa por Ada, limitado a invoices:pay — si pide más, se rechaza
4
eQuantic AuthAda
OpenID CIBA
Solicitud de autenticación por backchannel"¿Aprobar el pago de 1.240 € a Northwind?" en su móvil
5
AgenteTu API
Bearer
POST /invoices/8841/payEl token representa a una sola organización y el claim act identifica al agente
Paso 2 · autorregistro, sin necesidad de credenciales
curl -X POST https://id.acme.com/connect/register \ -H 'Content-Type: application/json' \ -d '{"client_name":"Invoice Agent", "redirect_uris":["http://localhost:8080/callback"], "token_endpoint_auth_method":"none", "scope":"openid profile"}'
201
Creado
{ "client_id": "…", "registration_access_token": "eqa_reg_…" }
Scopes a la medida de una herramientaConcede a un agente invoices:read y ahí se queda. Si pide más, el endpoint de token lo rechaza, y el claim act identifica al agente en cada token que tiene en nombre de otra persona.
UN AGENTE DE FACTURACIÓN PAGA UNA FACTURA EN NOMBRE DE ADA
5 llamadas
1
AgenteTu API
RFC 9728
GET /.well-known/oauth-protected-resourceDescubre qué servidor de autorización protege la API
2
AgenteeQuantic Auth
RFC 7591
POST /connect/registerUn client_id y un token de registro — mostrados una vez, guardados como hash
3
AgenteeQuantic Auth
RFC 8693
POST /connect/token grant_type=token-exchangeActúa por Ada, limitado a invoices:pay — si pide más, se rechaza
4
eQuantic AuthAda
OpenID CIBA
Solicitud de autenticación por backchannel"¿Aprobar el pago de 1.240 € a Northwind?" en su móvil
5
AgenteTu API
Bearer
POST /invoices/8841/payEl token representa a una sola organización y el claim act identifica al agente
Paso 2 · autorregistro, sin necesidad de credenciales
curl -X POST https://id.acme.com/connect/register \ -H 'Content-Type: application/json' \ -d '{"client_name":"Invoice Agent", "redirect_uris":["http://localhost:8080/callback"], "token_endpoint_auth_method":"none", "scope":"openid profile"}'
201
Creado
{ "client_id": "…", "registration_access_token": "eqa_reg_…" }
Scopes a la medida de una herramientaConcede a un agente invoices:read y ahí se queda. Si pide más, el endpoint de token lo rechaza, y el claim act identifica al agente en cada token que tiene en nombre de otra persona.
POSTURA DE DISEÑO
Seguro por defecto, no por configuración.
Seguro por defecto, no por configuración.
Si un ajuste puede configurarse mal hasta volverse inseguro, el valor por defecto está mal. Por eso algunas cosas están siempre activas — y otras no se entregan nunca.
NUNCA INCLUIDONi siquiera detrás de un flag
Concesión 
implícita
Flujo 
híbrido
Concesión 
por 
contraseña 
(ROPC)
PKCE 
con 
el 
método 
plain
Modo 
de 
respuesta 
fragment
Cuentas 
vinculadas 
por 
el 
email 
de 
un 
proveedor
Cuentas 
just-in-time 
sin 
dominio 
verificado
SIEMPRE ACTIVODesde la primera solicitud
PKCE en cada solicitud, solo S256
Una solicitud sin code challenge nunca recibe un código.
Coincidencia exacta de URI de redirección
El http sin TLS solo se permite en loopback. Sin redirecciones abiertas.
Reutilizar un código revoca la concesión
Reutiliza un código y también muere el refresh token emitido en su primer uso.
Rotación de refresh tokens con detección de reutilización
La reutilización revoca toda la familia de tokens.
Argon2id para contraseñas
La longitud es la única regla. La comprobación de contraseñas filtradas se activa con un interruptor.
Sesiones del lado del servidor
Tokens de 256 bits, guardados como SHA-256. 7 días deslizantes, techo de 30 días.
Secretos mostrados una sola vez
Las sesiones, las claves de API y los tokens de registro solo existen como hashes.
Ni iframes ni fugas de referrer
X-Frame-Options DENY y frame-ancestors none en cada respuesta.
Claves reales, o no arranca
En producción, se niega a arrancar sin claves de firma reales.
PKCE en cada solicitud, solo S256
Una solicitud sin code challenge nunca recibe un código.
Coincidencia exacta de URI de redirección
El http sin TLS solo se permite en loopback. Sin redirecciones abiertas.
Reutilizar un código revoca la concesión
Reutiliza un código y también muere el refresh token emitido en su primer uso.
Rotación de refresh tokens con detección de reutilización
La reutilización revoca toda la familia de tokens.
Argon2id para contraseñas
La longitud es la única regla. La comprobación de contraseñas filtradas se activa con un interruptor.
Sesiones del lado del servidor
Tokens de 256 bits, guardados como SHA-256. 7 días deslizantes, techo de 30 días.
Secretos mostrados una sola vez
Las sesiones, las claves de API y los tokens de registro solo existen como hashes.
Ni iframes ni fugas de referrer
X-Frame-Options DENY y frame-ancestors none en cada respuesta.
Claves reales, o no arranca
En producción, se niega a arrancar sin claves de firma reales.
PKCE en cada solicitud, solo S256
Una solicitud sin code challenge nunca recibe un código.
Coincidencia exacta de URI de redirección
El http sin TLS solo se permite en loopback. Sin redirecciones abiertas.
Reutilizar un código revoca la concesión
Reutiliza un código y también muere el refresh token emitido en su primer uso.
Rotación de refresh tokens con detección de reutilización
La reutilización revoca toda la familia de tokens.
Argon2id para contraseñas
La longitud es la única regla. La comprobación de contraseñas filtradas se activa con un interruptor.
Sesiones del lado del servidor
Tokens de 256 bits, guardados como SHA-256. 7 días deslizantes, techo de 30 días.
Secretos mostrados una sola vez
Las sesiones, las claves de API y los tokens de registro solo existen como hashes.
Ni iframes ni fugas de referrer
X-Frame-Options DENY y frame-ancestors none en cada respuesta.
Claves reales, o no arranca
En producción, se niega a arrancar sin claves de firma reales.
NUNCA INCLUIDONi siquiera detrás de un flag
Concesión 
implícita
Flujo 
híbrido
Concesión 
por 
contraseña 
(ROPC)
PKCE 
con 
el 
método 
plain
Modo 
de 
respuesta 
fragment
Cuentas 
vinculadas 
por 
el 
email 
de 
un 
proveedor
Cuentas 
just-in-time 
sin 
dominio 
verificado
SIEMPRE ACTIVODesde la primera solicitud
PKCE en cada solicitud, solo S256
Una solicitud sin code challenge nunca recibe un código.
Coincidencia exacta de URI de redirección
El http sin TLS solo se permite en loopback. Sin redirecciones abiertas.
Reutilizar un código revoca la concesión
Reutiliza un código y también muere el refresh token emitido en su primer uso.
Rotación de refresh tokens con detección de reutilización
La reutilización revoca toda la familia de tokens.
Argon2id para contraseñas
La longitud es la única regla. La comprobación de contraseñas filtradas se activa con un interruptor.
Sesiones del lado del servidor
Tokens de 256 bits, guardados como SHA-256. 7 días deslizantes, techo de 30 días.
Secretos mostrados una sola vez
Las sesiones, las claves de API y los tokens de registro solo existen como hashes.
Ni iframes ni fugas de referrer
X-Frame-Options DENY y frame-ancestors none en cada respuesta.
Claves reales, o no arranca
En producción, se niega a arrancar sin claves de firma reales.
PKCE en cada solicitud, solo S256
Una solicitud sin code challenge nunca recibe un código.
Coincidencia exacta de URI de redirección
El http sin TLS solo se permite en loopback. Sin redirecciones abiertas.
Reutilizar un código revoca la concesión
Reutiliza un código y también muere el refresh token emitido en su primer uso.
Rotación de refresh tokens con detección de reutilización
La reutilización revoca toda la familia de tokens.
Argon2id para contraseñas
La longitud es la única regla. La comprobación de contraseñas filtradas se activa con un interruptor.
Sesiones del lado del servidor
Tokens de 256 bits, guardados como SHA-256. 7 días deslizantes, techo de 30 días.
Secretos mostrados una sola vez
Las sesiones, las claves de API y los tokens de registro solo existen como hashes.
Ni iframes ni fugas de referrer
X-Frame-Options DENY y frame-ancestors none en cada respuesta.
Claves reales, o no arranca
En producción, se niega a arrancar sin claves de firma reales.
PKCE en cada solicitud, solo S256
Una solicitud sin code challenge nunca recibe un código.
Coincidencia exacta de URI de redirección
El http sin TLS solo se permite en loopback. Sin redirecciones abiertas.
Reutilizar un código revoca la concesión
Reutiliza un código y también muere el refresh token emitido en su primer uso.
Rotación de refresh tokens con detección de reutilización
La reutilización revoca toda la familia de tokens.
Argon2id para contraseñas
La longitud es la única regla. La comprobación de contraseñas filtradas se activa con un interruptor.
Sesiones del lado del servidor
Tokens de 256 bits, guardados como SHA-256. 7 días deslizantes, techo de 30 días.
Secretos mostrados una sola vez
Las sesiones, las claves de API y los tokens de registro solo existen como hashes.
Ni iframes ni fugas de referrer
X-Frame-Options DENY y frame-ancestors none en cada respuesta.
Claves reales, o no arranca
En producción, se niega a arrancar sin claves de firma reales.
Si una funcionalidad no se puede probar en integración, no se entrega.La auditoría de la BCP de seguridad y la revisión ASVS son suites de pruebas, no PDFs — cada flujo se ejecuta de punta a punta contra PostgreSQL 17 en Testcontainers, y cada desviación de un estándar tiene su propio registro de decisión.
dotnet test --filter SecurityBcpTests
Si una funcionalidad no se puede probar en integración, no se entrega.La auditoría de la BCP de seguridad y la revisión ASVS son suites de pruebas, no PDFs — cada flujo se ejecuta de punta a punta contra PostgreSQL 17 en Testcontainers, y cada desviación de un estándar tiene su propio registro de decisión.
dotnet test --filter SecurityBcpTests
ESTÁNDARES
Los estándares, y en qué punto está cada uno.
Los estándares, y en qué punto está cada uno.
El listón es superar las pruebas de conformidad, no sumar funcionalidades. Esto es lo que se entrega hoy y lo que persigue el plan de certificación.
Entregado
Objetivo de certificación
Próximo
ESTÁNDARES
Los estándares, y en qué punto está cada uno.
Los estándares, y en qué punto está cada uno.
El listón es superar las pruebas de conformidad, no sumar funcionalidades. Esto es lo que se entrega hoy y lo que persigue el plan de certificación.
Entregado
Objetivo de certificación
Próximo
PROTOCOLO
OAuth 2.1La base, no un modo
OpenID ConnectCore, descubrimiento, userinfo
RFC 7591 / 7592Registro dinámico de clientes
RFC 9126Solicitudes de autorización anticipadas
RFC 9396Solicitudes de autorización detalladas
RFC 9207Identificación del emisor
MÁQUINAS Y AGENTES
RFC 8693Intercambio de tokens
RFC 8628Autorización de dispositivos
OpenID CIBAAprobación por backchannel
RFC 9728Metadatos de recursos protegidos
RFC 8705Tokens vinculados a mTLS
DPoPA la espera de soporte upstream
Próximo
CREDENCIALES Y CUENTAS
WebAuthn · FIDO2Passkeys como credencial principal
RFC 6238TOTP con códigos de recuperación
Enlace mágico · OTPCódigos por email y SMS
NIST 800-63BNiveles de garantía por flujo
SCIM 2.0Aprovisionamiento por organización
SAMLFederación empresarial
Próximo
GARANTÍA
RFC 9700BCP de seguridad de OAuth, auditada
OWASP ASVS 5.0V6 y V7, niveles 1 y 2
Basic OPCertificación OpenID
Objetivo
Config OPCertificación OpenID
Objetivo
Dynamic OPCertificación OpenID
Objetivo
FAPI 2.0Perfil de seguridad
Objetivo
PROTOCOLO
OAuth 2.1La base, no un modo
OpenID ConnectCore, descubrimiento, userinfo
RFC 7591 / 7592Registro dinámico de clientes
RFC 9126Solicitudes de autorización anticipadas
RFC 9396Solicitudes de autorización detalladas
RFC 9207Identificación del emisor
MÁQUINAS Y AGENTES
RFC 8693Intercambio de tokens
RFC 8628Autorización de dispositivos
OpenID CIBAAprobación por backchannel
RFC 9728Metadatos de recursos protegidos
RFC 8705Tokens vinculados a mTLS
DPoPA la espera de soporte upstream
Próximo
CREDENCIALES Y CUENTAS
WebAuthn · FIDO2Passkeys como credencial principal
RFC 6238TOTP con códigos de recuperación
Enlace mágico · OTPCódigos por email y SMS
NIST 800-63BNiveles de garantía por flujo
SCIM 2.0Aprovisionamiento por organización
SAMLFederación empresarial
Próximo
GARANTÍA
RFC 9700BCP de seguridad de OAuth, auditada
OWASP ASVS 5.0V6 y V7, niveles 1 y 2
Basic OPCertificación OpenID
Objetivo
Config OPCertificación OpenID
Objetivo
Dynamic OPCertificación OpenID
Objetivo
FAPI 2.0Perfil de seguridad
Objetivo
PROTOCOLO
OAuth 2.1La base, no un modo
OpenID ConnectCore, descubrimiento, userinfo
RFC 7591 / 7592Registro dinámico de clientes
RFC 9126Solicitudes de autorización anticipadas
RFC 9396Solicitudes de autorización detalladas
RFC 9207Identificación del emisor
MÁQUINAS Y AGENTES
RFC 8693Intercambio de tokens
RFC 8628Autorización de dispositivos
OpenID CIBAAprobación por backchannel
RFC 9728Metadatos de recursos protegidos
RFC 8705Tokens vinculados a mTLS
DPoPA la espera de soporte upstream
Próximo
CREDENCIALES Y CUENTAS
WebAuthn · FIDO2Passkeys como credencial principal
RFC 6238TOTP con códigos de recuperación
Enlace mágico · OTPCódigos por email y SMS
NIST 800-63BNiveles de garantía por flujo
SCIM 2.0Aprovisionamiento por organización
SAMLFederación empresarial
Próximo
GARANTÍA
RFC 9700BCP de seguridad de OAuth, auditada
OWASP ASVS 5.0V6 y V7, niveles 1 y 2
Basic OPCertificación OpenID
Objetivo
Config OPCertificación OpenID
Objetivo
Dynamic OPCertificación OpenID
Objetivo
FAPI 2.0Perfil de seguridad
Objetivo
Los perfiles Implicit OP y Hybrid OP quedan excluidos de forma permanente — necesitan las concesiones heredadas que este servidor no va a mantener.
ORGANIZACIONES · B2B
Un token representa a una sola organización.
Un token representa a una sola organización.
Una cuenta global y un solo inicio de sesión — con una identidad separada dentro de cada organización a la que pertenece. Ningún token abarca nunca dos.
01
Los roles viven en la membresíaUna cuenta y un inicio de sesión — más una identidad separada dentro de cada organización, con sus propios roles y su estado de activación. Esa membresía es el recurso que aprovisiona SCIM.
02
SSO por organizaciónCuentas just-in-time solo donde un dominio verificado por DNS avala la dirección. La identidad sigue siendo proveedor más sujeto, nunca el email que declara un proveedor.
03
Suspender sin eliminarUna organización suspendida no confiere autoridad ni acepta cambios — y sigue visible para sus miembros.
04
Una puerta lateral auditadaorganizations:administer no se concede a nadie por defecto, y cada uso queda en el registro de auditoría del propio cliente.
AL
Ada LovelaceUna cuenta · una passkey · dos membresías
Token para Acme
owner
"org": "acme""role": "owner""scope": "invoices:*"
Token para Globex
member
"org": "globex""role": "member""scope": "invoices:read"
Token para Acme
owner
"org": "acme""role": "owner""scope": "invoices:*"
Token para Globex
member
"org": "globex""role": "member""scope": "invoices:read"
El token de Globex pide invoices:writeMiembro allí, propietaria en otra — la autoridad nunca pasa de una organización a otra.
Rechazado, no recortado
El token de Globex pide invoices:writeMiembro allí, propietaria en otra — la autoridad nunca pasa de una organización a otra.
Rechazado, no recortado
ORGANIZACIONES · B2B
Un token representa a una sola organización.
Un token representa a una sola organización.
Una cuenta global y un solo inicio de sesión — con una identidad separada dentro de cada organización a la que pertenece. Ningún token abarca nunca dos.
01
Los roles viven en la membresíaUna cuenta y un inicio de sesión — más una identidad separada dentro de cada organización, con sus propios roles y su estado de activación. Esa membresía es el recurso que aprovisiona SCIM.
02
SSO por organizaciónCuentas just-in-time solo donde un dominio verificado por DNS avala la dirección. La identidad sigue siendo proveedor más sujeto, nunca el email que declara un proveedor.
03
Suspender sin eliminarUna organización suspendida no confiere autoridad ni acepta cambios — y sigue visible para sus miembros.
04
Una puerta lateral auditadaorganizations:administer no se concede a nadie por defecto, y cada uso queda en el registro de auditoría del propio cliente.
AL
Ada LovelaceUna cuenta · una passkey · dos membresías
Token para Acme
owner
"org": "acme""role": "owner""scope": "invoices:*"
Token para Globex
member
"org": "globex""role": "member""scope": "invoices:read"
Token para Acme
owner
"org": "acme""role": "owner""scope": "invoices:*"
Token para Globex
member
"org": "globex""role": "member""scope": "invoices:read"
El token de Globex pide invoices:writeMiembro allí, propietaria en otra — la autoridad nunca pasa de una organización a otra.
Rechazado, no recortado
El token de Globex pide invoices:writeMiembro allí, propietaria en otra — la autoridad nunca pasa de una organización a otra.
Rechazado, no recortado
PANTALLAS ALOJADAS
Están cuando las quieres. Desaparecen cuando no.
Están cuando las quieres. Desaparecen cuando no.
El inicio de sesión con su refuerzo de segundo factor, la verificación de email, el restablecimiento de contraseña, el consentimiento y la confirmación de dispositivo llegan como componentes de eQuantic UI — en inglés y portugués, con la marca del tema de tu aplicación.Desactívalas y el host responde exactamente como antes de que existieran. Ningún flujo vive solo en una pantalla.
id.acme.com/signin
Acme ID
Inicia sesión en AcmeUsa tu passkey — sin necesidad de contraseña.
Continuar con una passkey
o
ada@acme.com
Enviarme un enlace de acceso por email
EN · PT-BR
¿Olvidaste tu contraseña?
id.acme.com/signin
Acme ID
Inicia sesión en AcmeUsa tu passkey — sin necesidad de contraseña.
Continuar con una passkey
o
ada@acme.com
Enviarme un enlace de acceso por email
EN · PT-BR
¿Olvidaste tu contraseña?
id.acme.com/signin
Acme ID
Inicia sesión en AcmeUsa tu passkey — sin necesidad de contraseña.
Continuar con una passkey
o
ada@acme.com
Enviarme un enlace de acceso por email
EN · PT-BR
¿Olvidaste tu contraseña?
id.acme.com/signin
Acme ID
Inicia sesión en AcmeUsa tu passkey — sin necesidad de contraseña.
Continuar con una passkey
o
ada@acme.com
Enviarme un enlace de acceso por email
EN · PT-BR
¿Olvidaste tu contraseña?
PANTALLAS ALOJADAS
Están cuando las quieres. Desaparecen cuando no.
Están cuando las quieres. Desaparecen cuando no.
El inicio de sesión con su refuerzo de segundo factor, la verificación de email, el restablecimiento de contraseña, el consentimiento y la confirmación de dispositivo llegan como componentes de eQuantic UI — en inglés y portugués, con la marca del tema de tu aplicación.Desactívalas y el host responde exactamente como antes de que existieran. Ningún flujo vive solo en una pantalla.
EN QUÉ PUNTO ESTÁ
Honestos sobre lo que está hecho.
Honestos sobre lo que está hecho.
La confianza se gana donde otros pueden comprobarla: certificación, producción y la revisión de alguien ajeno a nosotros. Ese es el orden del trabajo.
Construido
En marcha, con pruebas de integración
Proveedor OAuth 2.1 y OpenID Connect con pantallas alojadas
Passkeys, enlaces mágicos, TOTP, códigos por email y SMS sobre un único motor de flujos
Organizaciones, SSO por organización y aprovisionamiento SCIM
Intercambio de tokens, concesión de dispositivo, CIBA y claves de API
Permisos, roles y un registro de seguridad de solo adición
Suplantación auditada, alertas de nuevo dispositivo y de viaje imposible
Próximo
En curso ahora
Ejecuciones de certificación OpenID Basic, Config y Dynamic OP
eQuantic Accounts funciona sobre él — el primer despliegue en producción
Una revisión de seguridad externa y una política de divulgación
Más adelante
En cola, en este orden
Consola de administración
Federación SAML
SDK de cliente
Control de acceso basado en relaciones
Construido
En marcha, con pruebas de integración
Proveedor OAuth 2.1 y OpenID Connect con pantallas alojadas
Passkeys, enlaces mágicos, TOTP, códigos por email y SMS sobre un único motor de flujos
Organizaciones, SSO por organización y aprovisionamiento SCIM
Intercambio de tokens, concesión de dispositivo, CIBA y claves de API
Permisos, roles y un registro de seguridad de solo adición
Suplantación auditada, alertas de nuevo dispositivo y de viaje imposible
Próximo
En curso ahora
Ejecuciones de certificación OpenID Basic, Config y Dynamic OP
eQuantic Accounts funciona sobre él — el primer despliegue en producción
Una revisión de seguridad externa y una política de divulgación
Más adelante
En cola, en este orden
Consola de administración
Federación SAML
SDK de cliente
Control de acceso basado en relaciones
Para quién esEl equipo .NET que quiere su proveedor de identidad dentro de su propio host — self-hosted, fiel a los estándares, listo para agentes, con todo incluido y sin precio por usuario. No diremos que estamos a la altura de las grandes plataformas hasta que lo digan las ejecuciones de certificación y una revisión externa.
Para quién esEl equipo .NET que quiere su proveedor de identidad dentro de su propio host — self-hosted, fiel a los estándares, listo para agentes, con todo incluido y sin precio por usuario. No diremos que estamos a la altura de las grandes plataformas hasta que lo digan las ejecuciones de certificación y una revisión externa.
Para quién esEl equipo .NET que quiere su proveedor de identidad dentro de su propio host — self-hosted, fiel a los estándares, listo para agentes, con todo incluido y sin precio por usuario. No diremos que estamos a la altura de las grandes plataformas hasta que lo digan las ejecuciones de certificación y una revisión externa.
FAQ
Lo primero que preguntan los equipos de seguridad
Acceso anticipado
Lleva la identidad a tu propio hostPara equipos .NET listos para hacerse cargo de su capa de identidad. Configuramos juntos el feed de paquetes, las claves de firma y tu primer despliegue.
Acceso anticipado
Lleva la identidad a tu propio hostPara equipos .NET listos para hacerse cargo de su capa de identidad. Configuramos juntos el feed de paquetes, las claves de firma y tu primer despliegue.
Acceso anticipado
Lleva la identidad a tu propio hostPara equipos .NET listos para hacerse cargo de su capa de identidad. Configuramos juntos el feed de paquetes, las claves de firma y tu primer despliegue.
¿Listo para entregar algo real?
Agenda 30 minutos de conversación. Te decimos en la misma hora si somos el socio adecuado — o quién lo es.
¿Listo para entregar algo real?
Agenda 30 minutos de conversación. Te decimos en la misma hora si somos el socio adecuado — o quién lo es.
© 2026 eQuantic Tech. Todos los derechos reservados.