Everything the product does.
84 features in 9 groups, each with a link to the guide that explains it.
Passwordless and strong sign-in
Every way a person can prove who they are, on a hosted page you brand or inside your own UI.

Passkeys
Sign in with Face ID, Touch ID, Windows Hello or a hardware key. Passkeys cannot be phished or reused on a fake site. Users can register several and manage them in their account.
Magic links
A single-use link sent by email, valid for 15 minutes. No password to remember or reset.
One-time codes by email or text
Six-digit codes that expire after five minutes. Text messages go through your own Twilio, Vonage, AWS SNS or MessageBird account.
Push approval from the LumoAuth app
A sign-in request appears on the user's phone. They approve it with a fingerprint or face, and the request is signed by a key that never leaves the device.
Email and password, done carefully
Passwords are checked against the Have I Been Pwned breach list, rate limited, and locked after repeated failures. Password rules are yours to set.
Social login
Google, Microsoft, Apple, GitHub, Facebook, LinkedIn, Discord, Slack and more. Accounts link safely only when the provider has verified the email address.
Sign in on another device
TVs, command-line tools and devices without a browser show a short code. The user enters it on their phone or laptop.
Two-step verification
Authenticator apps, recovery codes, text messages and push. Policies decide who must enroll and which factors are allowed.
Adaptive step-up
Ask for a second factor only when something looks off: a new device, a new country, impossible travel, a VPN or Tor exit, or a rule you wrote.
Login page that matches your product
Logo, colours, layout, custom CSS and a custom HTML layout with safe slots. Or paste your website URL and let the AI theme generator match it.
AI agent identity and control
Give each AI agent its own identity, a fixed list of what it may do, a spending limit, and a human who can say no.

Agent registry
Every agent is registered with a name, an owner, credentials, capabilities and a budget. The list shows what needs attention and lets you suspend or revoke an agent in one click.
Cryptographic identity (AAuth)
An agent signs every request with its own private key. The server checks the signature, the time, and a digest of the body, so a stolen token alone is useless.
No secrets in the cloud (workload identity)
An agent running on AWS, Azure, Google Cloud, Kubernetes, GitHub Actions, GitLab CI, SPIFFE and other platforms proves where it runs and gets a token. Nothing to store, nothing to leak.
Just-in-time permissions
The agent asks for exactly what a task needs, with a reason. A person approves or denies. The token it gets back works for one task and expires within minutes.
Approvals from your phone, Slack, Teams, ServiceNow or Jira
Approvers get the request where they already work. Decisions are signed and recorded.
Auto-approve rules
Low-risk, routine requests can be approved by policy, so humans only see what matters. Wildcard rules are not allowed.
Budgets and kill switch
Cap the number of steps, the time and the money an agent may spend on a task. Suspend any agent instantly; its tokens stop working at once.
Ask API
Before an agent takes an action, your code asks "may this agent do this?" and gets a yes or no plus the reason.
Delegation chains
When a user asks an agent, which calls another agent, every token records the whole chain. You always know who asked for what.
Token vault for outside services
Store the Google, GitHub or Salesforce tokens an agent needs on a user's behalf. The agent never sees the raw credential; the vault refreshes it before it expires.
Cross-app access
Let an agent call another application's API on a signed-in user's behalf without a second login, using a signed assertion from the user's identity provider.
Activity timeline and tracing
Every token, call, request and decision lands on a per-agent timeline. Trace IDs link to Langfuse, LangSmith, Arize or your OpenTelemetry collector.
Works with the frameworks you use
Quickstarts for LangChain, LangGraph, CrewAI, OpenAI Agents SDK, Google ADK, Agno, plain Python and Node.js. Agent cards for the Agent2Agent protocol.
Agent registries and AI gateways
Import agents from AWS AgentCore, Microsoft Entra Agent ID, Okta or Salesforce Agentforce. Issue per-agent keys on LiteLLM, Portkey, Kong or Cloudflare AI Gateway.
MCP server authorization
Put real access control in front of the tools your agents call over the Model Context Protocol.

Register an MCP server in a minute
Name the server, pick the tools it exposes as scopes, and choose who may connect. LumoAuth publishes the discovery document the MCP spec expects.
Standard discovery
Agents read one well-known address and learn which authorization server protects the tools and which scopes exist. No custom handshakes.
One token per tool
A token can allow a search tool and nothing else. A compromised agent cannot reach tools it was never granted.
Clients identified by a URL (Client ID Metadata Documents)
An MCP client can use an HTTPS URL as its client ID. LumoAuth fetches the JSON document at that URL, checks it, and shows the user the client's real name on the consent screen. No registration call, no secret, and it is on by default. A check tool in the portal and the API tells a developer exactly why a document was rejected.
Self-registering clients
Clients that prefer the API register themselves through standard dynamic client registration, so new tools still do not need a portal visit first.
Revocation that reaches the tool
Revoke an agent and the MCP server hears about it through a security event, not a cache timeout.
Reference server code
A documented way to verify tokens inside your own MCP server, with the exact headers and errors to return.
Access control
Roles for the simple cases, attributes for conditions, relationships for sharing. One question answers all three.

Roles, permissions and groups
Create permissions, bundle them into roles, assign roles to people and groups. Roles can inherit from each other.
Attribute rules
"Only from the office network", "only during business hours", "only if the record belongs to their region". Conditions on the user, the resource and the request.
Relationship-based access
Model sharing the way Google Drive does: an editor of a folder can edit the documents in it. Built on the Zanzibar model.
One check endpoint
Ask "can this user do this to that?" and get the answer in under a millisecond, in the standard AuthZEN shape. Bulk checks for list pages.
Write policies in plain English
Type the rule. The AI drafts the policy, you review it, the tester proves it before it goes live.
Permission tester
Pick a user, an action and a resource. See the decision and the exact rules that produced it. No redeploy to debug access.
Agents use the same rules
An explicit deny for an agent always wins over its capability list, so a policy can fence off what an agent may touch.
Enterprise sign-in and B2B
What a customer's IT team asks for before they sign: their own identity provider, automatic provisioning, and an admin portal of their own.

Customer SSO (inbound)
Let each customer sign in through their own Okta, Microsoft Entra, Google Workspace or any SAML or OpenID Connect provider. Presets fill in the fields.
LumoAuth as the identity provider (outbound)
Sign your users into SAML-only apps such as Salesforce, Box or Slack. LumoAuth becomes the IdP.
LDAP and Active Directory
Authenticate against a corporate directory over TLS, with encrypted bind credentials.
Organizations
Each customer gets an organization with its own members, roles, invitations, branding and sign-in settings.
Self-service admin portal for customers
Your customer's admin manages their own members, roles and invitations at /b2b. Fewer support tickets for you.
Directory sync in (SCIM)
Users and groups arrive from the customer's directory automatically. When someone leaves, their access ends everywhere within seconds.
Directory sync out
Push users and groups to Okta, Entra, Google Workspace, Salesforce, GitHub, Slack, Zoom, Atlassian and others.
HR system as the source of truth
Joiners, movers and leavers flow from BambooHR, Workday, Rippling, HiBob, Personio, Finch or Merge.
Custom domains
auth.yourcompany.com with automatic TLS. Users never see a LumoAuth address.
Device trust
Let only managed, healthy devices in, using signals from CrowdStrike, Intune, Jamf or Kandji.
Standards-based sign-in for apps and APIs
OAuth 2.1 and OpenID Connect with the security profiles banks use, so any library in any language works.

Every grant you need
Authorization code with PKCE, client credentials, device, refresh, token exchange, CIBA and JWT bearer. Discovery documents for each organization.
Sender-constrained tokens (DPoP)
A token is bound to a key the client holds, so it cannot be replayed from another machine.
Pushed and signed requests (PAR, JAR, JARM)
The authorization request goes to the server first, signed, so nothing in the browser redirect can be tampered with.
FAPI 2.0 and certificate-bound tokens
The financial-grade profile with mutual TLS, for open banking and other high-value APIs.
Backchannel authentication (CIBA)
A service or agent asks a user to approve an action on their own device, with no redirect.
Rich authorization requests and resource indicators
Describe exactly what a token may do, and pin it to one API.
Dynamic client registration
Apps and MCP clients register themselves through the API.
Client ID Metadata Documents
A public client can skip registration altogether and use the URL of a hosted metadata document as its client ID. Organization admins can turn it off; a sample client shows the whole flow in a few lines.
Logout everywhere
Front-channel and back-channel logout sign a user out of every application at once.
Per-organization signing keys
Rotate keys without downtime. Generate them in your own KMS or HSM if you prefer.
API keys and machine credentials
Scoped API keys for services and CI, client secrets that are hashed at rest, and workload identity where a secret is not needed at all.
Attack protection
The defaults stop the common attacks. Risk scoring, threat detection and alerting give security teams the signals and automation they ask for.

Lockout, rate limits and velocity checks
Repeated failures lock the account, and more than twenty named rate limiters protect every endpoint.
Breached-password checks
New passwords are checked against Have I Been Pwned without ever sending the password itself.
CAPTCHA where it helps
Cloudflare Turnstile, hCaptcha or reCAPTCHA on sign-in, sign-up, password reset and magic-link requests.
Fraud Shield
Impossible travel, new country, VPN, proxy and Tor detection, device fingerprinting, unusual-behaviour scoring and a tunable risk policy, with managed IP reputation included.
Threat Detection
Spot credential-stuffing campaigns, replayed tokens, session anomalies and strange agent behaviour, and respond automatically.
Security alerts
High-risk events go to Slack, Microsoft Teams, PagerDuty, Opsgenie or email, with a minimum severity you choose.
Shared signals in and out
Tell downstream apps a session was revoked, and listen to other identity providers when they say the same, using the CAEP and RISC standards.
Encrypted at rest, audited by design
Secrets, keys and credentials are encrypted with a key you control. Security headers, CSP and strict transport are on by default.
Privacy, audit and compliance
The records auditors ask for, produced by the system that already has the data.

Consent records and data-subject requests
Users can export, correct, restrict or delete their data from their account. Every consent is versioned and auditable.
Full GDPR suite
Records of processing activities, data protection impact assessments, breach notifications with the 72-hour clock, sub-processor registry and an evidence pack in one command.
Audit log
Every sign-in, token, change and decision, searchable and exportable, with retention from 3 days to a year.
Stream logs to your SIEM
Splunk, Microsoft Sentinel, Google SecOps, Elastic, Sumo Logic, Datadog, Axiom, Honeycomb, CloudWatch, S3, OpenTelemetry, BigQuery, Snowflake or any HTTPS endpoint.
Data residency
Hosted in the US or the EU. You choose when you create your organization.
Bring your own signing keys
Keys generated and held in your AWS KMS, Azure Key Vault, Google Cloud KMS, HashiCorp Vault, a hardware security module or one of fifteen providers.
Uptime commitment
A 99.9% monthly uptime SLA, with a public status page.
Developer platform
SDKs for the stacks you use, an API for everything the portal can do, and tools that make debugging auth less painful.

SDKs for six languages
Hand-written SDKs for JavaScript and TypeScript, Python, Go, PHP, Java and .NET, plus framework packages for Next.js, React, Express, FastAPI, Spring Boot, ASP.NET Core, Symfony and Laravel.
Generated API clients in nine languages
Typed clients for every REST endpoint, including Ruby, Rust and Swift, generated from the OpenAPI spec.
Admin API
Users, roles, applications, agents, MCP servers, webhooks and settings, all scriptable. Configuration as code with Terraform or the CLI.
The lumo CLI
Log in, scaffold an app, start a sandbox, open a tunnel for local webhooks, migrate users from another provider.
Throwaway sandboxes
Spin up an isolated organization for a branch, a pull request or a CI run and delete it when done.
Test tokens and a JWT inspector
Mint a signed token for any user or agent from the portal, decode and verify any token, and try API calls in the explorer.
Webhooks
Signed deliveries for sign-ins, users, agents, approvals, consents and more, with retries, a dead-letter queue and a delivery history. Slack, Discord and Teams formats built in.
Kubernetes operator and Terraform provider
Create clients and agents from a Job, and keep your configuration in version control.
Progressive profiling
Ask for a little information at a time, with rules for when to ask. No wall of fields at sign-up.
Analytics and CRM sync
Forward sign-in events to Segment, Mixpanel, Amplitude or PostHog, pseudonymised by default. Create contacts in HubSpot or Salesforce.
What is implemented, by specification.
The guides use plain names. This is the list for a security review or a vendor questionnaire.
Sign-in and tokens
- OAuth 2.0 and 2.1
- RFC 6749, OAuth 2.1 draft
- OpenID Connect
- OIDC Core 1.0, Discovery, Session, Logout
- PKCE
- RFC 7636
- Pushed authorization requests
- RFC 9126
- Signed requests and responses
- RFC 9101 (JAR), JARM
- Rich authorization requests
- RFC 9396
- Resource indicators
- RFC 8707
- Device authorization
- RFC 8628
- Backchannel authentication
- OpenID CIBA Core 1.0
- Dynamic client registration
- RFC 7591, RFC 7592
- Token exchange
- RFC 8693
- JWT client authentication
- RFC 7523
- Mutual TLS
- RFC 8705
- Revocation and introspection
- RFC 7009, RFC 7662
- Step-up challenge
- RFC 9470
- FAPI 2.0
- OpenID FAPI 2.0 Security Profile
- OAuth security best practice
- draft-ietf-oauth-security-topics
- Issuer in the response
- RFC 9207
Token formats and keys
- JSON Web Tokens
- RFC 7519, RFC 9068
- JSON Web Keys
- RFC 7517, RFC 7638
- Sender-constrained tokens (DPoP)
- RFC 9449
APIs, resources and MCP
- Protected resource metadata
- RFC 9728
- MCP authorization
- Model Context Protocol authorization spec
- Client ID Metadata Documents
- draft-ietf-oauth-client-id-metadata-document-02
- Cross-app access
- Identity Assertion Authorization Grant draft
- Authorization API
- OpenID AuthZEN 1.0
AI agent identity
- HTTP message signatures
- RFC 9421, RFC 9530, RFC 8941
- Delegation and actor claims
- RFC 8693, OAuth Actor Profile draft
- Transaction tokens
- draft-ietf-oauth-transaction-tokens
- Attestation-based client auth
- draft-ietf-oauth-attestation-based-client-auth
- Workload identity
- SPIFFE JWT-SVID
- Agent cards
- Agent2Agent protocol v1.0
- Trace correlation
- W3C Trace Context
Security events
- Security event tokens
- RFC 8417, RFC 8935, RFC 8936, RFC 9493
- Shared Signals and CAEP
- OpenID SSF 1.0, CAEP 1.0, RISC 1.0
Directories and enterprise sign-in
- SCIM 2.0
- RFC 7642, RFC 7643, RFC 7644, SCIM Notify draft
- SAML 2.0
- OASIS SAML 2.0 (IdP and SP)
- LDAP
- RFC 4513
- Passkeys
- W3C WebAuthn Level 3, FIDO2 CTAP, FIDO MDS
Ship passwordless sign-in this week. Put guardrails on your agents today.
The Developer plan is free for 10,000 monthly users and ten agents, with no card. Everything speaks open standards, so moving in or out is a config change.