BMonkey

Motor de autenticación del ecosistema

Identidad B2B conestándar abierto.

  • OPENID CONNECTDiscovery + JWKS contra estándar abierto
  • MULTI-TENANTClaims canónicos tenant_id + tenant_slug
  • SIN LOCKINIdP propio · sin Auth0, Cognito ni Keycloak
  • INCLUIDOVa embebido en cada producto que adoptas
El problema hoy

Atar el ecosistema a un IdP de terceros no era una opción.

“Cada componente nuevo cableado contra Auth0 multiplica vendor lockin: pricing por MAU, claims no controlados, ciclo de release ajeno. Para un ecosistema multi-componente B2B la autenticación es infraestructura propia, no un proveedor más.

Decisión Javier + Jonhjar · 2026-06-14 · sesión Estrategia BJungle.

Dolor 01

Vendor lockin

Cambios de pricing, SLA o política del IdP externo se propagan al instante a N componentes. Cero margen de negociación.

Dolor 02

Claims ajenos

Los `claims` del JWT los define el IdP — no el ecosistema. `tenant_id` y `tenant_slug` quedan como custom claims frágiles.

Dolor 03

Costo por usuario

Auth0 cobra desde US$23 por mil MAU activos. En multi-tenant B2B regional ese costo escala antes que el revenue del componente.

Funcional

1Qué hace BMonkey.

BMonkey resuelve la autenticación del ecosistema: verifica quién es el sujeto que entra y emite un JWT canónico. La autorización (roles, permisos, qué puede hacer ese sujeto) sigue siendo de cada componente — BMonkey no se mete ahí. Frontera dura.

AuthN centralizada

Un solo lugar donde se verifica credenciales del usuario. Cada componente del ecosistema delega esa verificación.

  • OAuth 2.0 + OpenID Connect estándar
  • JWT firmado RS256 con JWKS expuesto
  • PKCE obligatorio en authorization code flow

AuthZ por componente

Cada producto BJungle define sus propios roles, permisos y políticas multi-tenant. BMonkey no opina sobre eso.

  • RBAC interno por componente
  • Políticas multi-tenant locales
  • Audit de acciones en cada producto

Claims canónicos

Todo JWT incluye <code>tenant_id</code> y <code>tenant_slug</code> del ecosistema BJungle. Los componentes filtran RLS sobre ese claim.

  • <code>sub</code> · UUID inmutable del usuario
  • <code>tenant_id</code> · scope organizacional
  • <code>email_verified</code> · estado de la cuenta
BMonkey verifica quién entra. No verifica qué puede hacer. La autorización pertenece a cada componente — esa frontera es la decisión raíz del ecosistema (SPEC-AUTH-ECOSISTEMA-BJUNGLE.md §1).
Por qué propio y no Auth0 / Cognito

2IdP propio, no proveedor más.

Auth0, Cognito y Keycloak son IdPs sólidos para una app aislada. Para un ecosistema multi-componente B2B, atar la autenticación a un vendor externo multiplica fricción operativa y comercial.

Control

Claims canónicos propios

<code>tenant_id</code> y <code>tenant_slug</code> son ciudadanos de primera clase, no custom claims frágiles que dependen del UI del IdP externo.

Independencia

Anti vendor lockin

Cambios de pricing, SLA o política del IdP externo no se propagan a N componentes. La evolución la decide el ecosistema.

Costo

Sin costo por usuario

Auth0 cobra >US$23 por mil MAU activos. En multi-tenant B2B regional ese costo escala antes que el revenue del componente.

Multi-component

Un client_id por producto

BRhino, BLeopard, BGorilla, BPanther… cada uno tiene su client_id propio. Sin friction de gestión cross-tenant en consola ajena.

Cómo se integra

3Estándar abierto, no SDK propietario.

BMonkey expone OIDC discovery + JWKS. Cualquier componente que entienda OpenID Connect lo consume sin SDK propietario. Integrarlo en un componente nuevo lleva las horas de cualquier integración OIDC.

Discovery

OIDC discovery URL

Endpoint público con metadata del IdP: endpoints, scopes soportados, algoritmos de firma. Cliente OIDC estándar lo consume sin código custom.

Firma

JWKS · JWT RS256

Keys públicas expuestas vía JWKS. Verificación de tokens local en cada componente. Sin round-trip a BMonkey por request.

Flow

Authorization Code + PKCE

Flow estándar OAuth 2.0 con PKCE obligatorio. SPA, mobile y backend usan el mismo patrón seguro por defecto.

Multi-tenant + multi-component

4Un BMonkey · N componentes · M tenants.

Cada cliente B2B final del ecosistema tiene su tenant en BMonkey. Cada producto BJungle es un client_id distinto. Un solo BMonkey sirve a N componentes y M tenants sin duplicar infra ni mezclar contextos.

1
BMonkey en el ecosistema
N
Componentes BJungle conectados
M
Tenants B2B finales activos
OIDC
Protocolo único de integración
Cada componente recibe en el JWT el tenant_id del sujeto. Sobre ese claim filtra RLS, valida policies y resuelve scope. Cero código de tenant-routing en cada producto.
Frontera B2B vs B2C

5Cuatro líneas duras que separan B2B de B2C.

BMonkey es B2B y vive en bjungle.net. Lo que era OnlyOne queda diferido a NewCo B2C en sitio separado. La separación no es de UX — es de estrategia.

1

BMonkey · B2B

IdP corporativo del ecosistema BJungle. Cada cliente B2B (banco, cooperativa, caja, aseguradora) tiene su tenant. Vive en bjungle.net.

2

OnlyOne · B2C (diferido)

Wallet de identidad consumer-facing del usuario final. Se reactiva cuando se levante NewCo. Vivirá en sitio separado — no en bjungle.net.

3

Sin narrativas mezcladas

BMonkey no habla de wallet personal, identidad portable del consumidor ni SSI. Esa línea es exclusivamente de la conversación B2C de NewCo.

4

Sin colisión técnica

BMonkey emite JWT corporativos. OnlyOne emitirá Verifiable Credentials W3C consumer-facing. Estándares distintos, audiencias distintas.

Roadmap

6V1 → V2 → V3 sin fechas duras.

V1 · Core

OAuth 2.0 + OpenID Connect core. Multi-tenant nativo. JWT RS256 con JWKS expuesto. Claims canónicos del ecosistema (tenant_id + tenant_slug). Punto de entrada para todos los componentes B2B.

OIDCProtocolo base
RS256Firma de tokens
MultiTenant nativo

V1 · alcance greenfield del componente

V2 · Empresa

MFA configurable por tenant. SSO empresarial vía SAML bridge para clientes con AD/Entra ID. Soporte de IdP federados (Google Workspace, Azure AD) cuando el cliente final lo exija.

MFAStep-up factor
SAMLBridge para AD
Fed.IdPs externos

V2 · onboarding de clientes corporativos exigentes

V3 · Audit on-chain + step-up

Eventos críticos de AuthN (login admin, token revocation, cambio de credencial) sellados en Polygon vía BLion. Step-up auth contextual basado en señal de riesgo del componente.

BLionSealed events
Step-upAuth contextual
AuditTrail inmutable

V3 · trazabilidad regulatoria nativa

Preguntas frecuentes

7Lo que más nos preguntan.

¿BMonkey reemplaza a Auth0 / Cognito / Keycloak en mi institución?
No. BMonkey es el IdP del ecosistema BJungle — autentica a los usuarios que entran a los componentes BJungle. Tu Auth0 corporativo sigue autenticando lo que ya autenticaba. Si necesitás federación, BMonkey V2 incluye SAML bridge.
¿Qué cobra BMonkey por usuario?
Nada. BMonkey va incluido en el pricing de cada producto del ecosistema que adoptas. No se cotiza standalone porque no se vende standalone — es infra del ecosistema, no producto comercial.
¿Cumple con LPDP / GDPR?
Sí. Multi-tenant con aislamiento por tenant nativo. Cada institución es dueña de los datos de sus usuarios. BMonkey no agrega ni cruza data entre tenants — esa frontera es dura.
¿Puedo federar contra mi Azure AD / Google Workspace?
Roadmap V2. SAML bridge + OIDC federation para clientes B2B con IdP corporativo propio. V1 cubre el caso default (usuarios gestionados por BMonkey).
¿Y la autorización (roles, permisos)?
No es de BMonkey. Cada componente BJungle resuelve sus propias políticas RBAC y multi-tenant sobre los claims canónicos del JWT. Esa frontera es la decisión raíz (SPEC-AUTH §1).
¿Qué pasa con la decisión OnlyOne previa?
OnlyOne queda diferido a NewCo B2C (wallet consumer-facing). Su rol AuthN B2B en el ecosistema fue absorbido por BMonkey desde 2026-06-14. Decisión Javier + Jonhjar.

Cada componente del ecosistema BJungle autentica vía BMonkey. La autorización vive en cada producto. El JWT canónico viaja sellado entre componentes — y en V3, los eventos críticos también van a blockchain.

Conversemos

BMonkey es infraestructura del ecosistema, no producto standalone.

BMonkey no se demuestra como producto individual — se entiende mirando el ecosistema completo. Si la conversación es identidad B2B en LATAM, hablemos.