Enterprise Identity • Lightweight Architecture

SimpleTessera IDP

A high-performance, multi-tenant OAuth 2.0 & OpenID Connect (OIDC) Identity Provider engineered in Python with FastAPI, Uvicorn, and MariaDB. Features native multi-factor authentication with full support for RFC 6238 TOTP and Hardware Tokens like YubiKey, backed by a dedicated Android MFA companion app.

RFC 7636 PKCE (S256)
RS256 Asymmetric Tokens
Dual-Database Datastore v4
Hardware Tokens (YubiKey & FIDO2)
RFC 6238 TOTP Authenticators
Android Jetpack Compose MFA
GNU GPLv3 Licensed
Process Isolation • Datastore Decoupling

Physical Microservice Architecture

SimpleTessera physically isolates protocol authentication, administration, and MFA verification into dedicated daemons.

Inbound Traffic: Apache 2.4 Front-End Reverse Proxy • TLS Termination (Port 443)
TCP :2443 / :3000
Public Auth Server
Dedicated to OAuth/OIDC protocol flows, PKCE code evaluation, RS256 token issuance, and login theme rendering. Zero admin routes.
TCP :3001
Admin UI & API Console
Realm management, client registrations, RSA signing key rotations, live session monitors, and template customizers. Bound internally.
TCP :3443 / :3002
Standalone MFA Service
Self-service registration portal, WebAuthn FIDO2 verification, TOTP RFC 6238 processing, and Android deep-link orchestration.
Dual MariaDB Databases & Directory Federation
MariaDB Policy Store (SimpleTessera)
Datastore v4 housing registered OAuth clients, scopes and claims, active sessions, asymmetric keys, realms, login themes, and MFA credentials.
MariaDB User Store (UserStore) & LDAP
Dedicated store for administrative operators with strict RBAC, and directory federation hooks for corporate LDAP, LDAPS, or external SQL.
Engineered for Reliability

Core Platform Capabilities

Built from the ground up for compliance, performance, and flexibility in home lab and enterprise infrastructure.

RFC OIDC & OAuth 2.0 Engine

Full support for OpenID Discovery, JWKS keysets, Authorization Code with PKCE (RFC 7636), Client Credentials, Refresh Token grant with family revocation, UserInfo, and RP-initiated logout.

TOTP & Hardware Tokens

Native multi-factor support featuring standard RFC 6238 TOTP (Google Authenticator, Microsoft Authenticator) and physical Hardware Tokens like YubiKey (YubiKey OTP Modhex & FIDO2 / WebAuthn) with realm-level picklists and per-client enforcement.

Multi-Tenant Identity Realms

Partition applications, policies, user directories, and branding by tenant realms. Route tenants using virtual-host domains (e.g., alpha.login.corp.com) with global supervision and fallbacks.

Dynamic Theming Engine

Custom login UI branding with in-database HTML/CSS template editing, reset-to-default capability, and UUID-based multi-client theme linking resolving hierarchically.

Active Session Management

Live session monitoring tracking IP address, User-Agent device data, and authorized applications. Configure sliding idle timeouts and execute instant one-click session revocations.

Dual-Database Architecture

Fail-fast Datastore v4 design cleanly separating administrative operators in UserStore from OAuth configurations in SimpleTessera to prevent privilege elevation and split-brain states.

Zero-Trust • Phishing Resistance

Multi-Factor Authentication & Hardware Tokens

SimpleTessera provides native enterprise multi-factor authentication with out-of-the-box support for RFC 6238 TOTP authenticators, physical Hardware Tokens like YubiKey, and our native Android MFA companion app.

RFC 6238 Software TOTP

Seamless compatibility with any standard authenticator app including Google Authenticator, Microsoft Authenticator, Aegis Authenticator, 1Password, and Bitwarden. Uses standard 30-second rolling 6-digit codes with automatic clock-skew compensation and rapid QR code provisioning.

Hardware Tokens & YubiKey

Full support for physical hardware tokens including YubiKey 5 Series, Security Key by Yubico, SoloKeys, and Nitrokey. Authenticate via physical YubiKey OTP (Modhex 44-char) touch generation or FIDO2 / WebAuthn (CTAP2) public-key cryptography via USB and NFC for complete phishing resistance.

Self-Service Device Portal

End-users independently register, nickname, test, and unenroll their hardware keys and TOTP apps through the dedicated Standalone MFA Portal (port 3443 / 3002 at /portal). Realm administrators define permitted token catalogs globally or enforce mandatory step-up challenges per application client.

Native Mobile Security

SimpleTessera Android MFA Companion

A high-performance Android companion application built natively in Kotlin with Jetpack Compose Material 3 for seamless, hardware-encrypted multi-factor authentication.

  • Deep-Link Enrollment: Instant zero-touch setup via simpletessera-mfa://enroll.
  • Hardware KeyStore Security: AES-256-GCM authenticated encryption for all TOTP seeds.
  • Hardware Token & CameraX: Fast QR code capture and validation with offline token generation.
// Deep Link Enrollment Payload
URI: simpletessera-mfa://enroll?
server=https%3A%2F%2Fmfa.randomintervals.com&
token=sec_tkn_8f902ac7819e&
realm=Default&
user=pferland
✓ Validated with Android KeyStore TEE Provider
Standards Compliant

OIDC & OAuth 2.0 Endpoints

Integrate any standard OpenID Connect client, backend, single-page app, or mobile client.

Method Endpoint Path Description Standard
GET /.well-known/openid-configuration OpenID Connect Provider Discovery metadata document. OIDC Discovery
GET /.well-known/jwks.json JSON Web Key Set (RS256 RSA-2048) public verification keys. RFC 7517
GET /oauth/v2/auth OAuth 2.0 Authorization Endpoint with PKCE challenge verification. RFC 7636
POST /oauth/v2/token Token exchange endpoint (Authorization Code, Client Credentials, Refresh). RFC 6749
GET /oauth/v2/userinfo UserInfo endpoint returning identity claims for Bearer access tokens. OIDC Core 1.0
POST /oauth/v2/introspect Active token metadata and claim introspection. RFC 7662
POST /oauth/v2/revoke Token revocation endpoint for active access and refresh tokens. RFC 7009
GET /oauth/v2/logout RP-Initiated Single Logout with post-logout redirect verification. OIDC Session
POST /api/mfa/enroll/totp Initialize RFC 6238 TOTP enrollment (returns QR code URI & base32 secret). RFC 6238
POST /api/mfa/enroll/yubikey-otp Register and validate a physical YubiKey Hardware OTP (Modhex 44-char) device. Yubico OTP
POST /api/mfa/enroll/webauthn Register FIDO2 / WebAuthn hardware security keys with public key credentials. W3C WebAuthn
POST /api/mfa/internal/verify Inter-service backend verification of MFA challenge during OAuth 2.0 login. Step-Up MFA
Production Ready

Deployment & Quickstart

Deploy SimpleTessera in minutes using systemd, python virtual environments, and Apache TLS reverse proxying.

# 1. Clone repository & install dependencies git clone https://github.com/pferland/SimpleAuth.git /opt/SimpleTessera cd /opt/SimpleTessera uv venv && source .venv/bin/activate uv pip install -r requirements.txt # 2. Provision Dual MariaDB Datastores (UserStore + SimpleTessera) ./install.sh # or: python -m simpletessera.core.db --init # 3. Enable and Start Systemd Service Group sudo systemctl enable --now simpletessera.target sudo systemctl status simpletessera-auth simpletessera-admin simpletessera-mfa