Skip to content
Open-source · OAuth 2.0 + PKCE

Passwordless authenticationfor your website

Let people sign in with a one-time code emailed to them — no passwords to create, remember, store, or leak. Logintoo is an OAuth 2.0 authorization server you can self-host.

How it works: for your users

Four steps, no password anywhere in sight.

  1. 1 A person signing in on a website

    A visitor taps Log in or Sign up on your site and is sent to the Logintoo authorization server, where they enter their email address.

  2. 2 An email arriving with a one-time code

    Logintoo emails a one-time access code to that address.

  3. 3 Entering the one-time code

    The visitor enters the code. Logintoo verifies it — proving they control the inbox — and sends them back to your site with an access token.

  4. 4 Signed in and accessing data

    Your site uses the token to grant access. The user has no password to remember, and you have none to store or protect.

How it works: under the hood

Standard OAuth 2.0 with PKCE — Logintoo just replaces the password with a one-time code.

Reference architecture

Three components work together:

A

Your website

The OAuth 2.0 client. It can be a static / JAMstack site.

B

Your API

The resource server that serves user requests. It can be serverless with API Gateway and Lambda.

C

Logintoo

The OAuth 2.0 authorization server that authenticates users and issues access tokens. Open source — deploy your own on AWS.

Diagram: the client website, your API (resource server), and the Logintoo authorization server exchanging tokens

The workflow

  1. 1

    Your site (the client) requests an access token from the authorization server, following the OAuth 2.0 and PKCE exchange in RFC 6749 and RFC 7636.

  2. 2

    The authorization server authenticates the user by emailing and validating a one-time code, then issues an access token.

  3. 3

    Your site calls your API (the resource server), presenting the access token — a signed JWT.

  4. 4

    The resource server validates the token and, if valid, serves the request.

The authorization server also issues and rotates refresh tokens, used to obtain a new access token when the current one expires. A single authorization server can issue tokens for many resource servers.

Why passwordless?

Passwords are the weak point attackers reach for first. Remove them, and a whole class of breaches goes with them — said better by the people who study it:

Verizon logo
In [Basic Web Application Attacks], about 88% of the breaches involve the use of stolen credentials.
2025 Data Breach Investigations Report, Verizon
Microsoft Security logo
Passwords can be stolen, guessed, reused, or captured through phishing.
Microsoft Security
Okta logo
Passwords are the weakest link in the security chain, prone to human error and vulnerable to phishing, credential stuffing, and brute force attacks.
Okta
IBM logo
Use of stolen credentials to access valid accounts surged 71% over the previous year and represented 30% of all incidents.
IBM X-Force Threat Intelligence Index, 2024

Ready to drop passwords?

Take the live demo for a spin, browse the source, or get in touch — we’d love to hear from you.