Open-source identity provider for SSO, supporting SAML, OAuth2/OIDC, LDAP and RADIUS, self-hostable from small labs to large clusters.
- Stars
- 68
- Forks
- 4
- Open issues
- 0
- Last commit
- 8 days ago
What is it?
Burrow is a self-hosted OpenID Connect identity provider aimed at small teams and internal services. It centralizes user accounts, shared single sign-on and application access in one single-organization, single-instance service. The Go backend and React UI ship as one binary, or can run alongside PostgreSQL through Docker Compose.
Applications connect through the OIDC Authorization Code flow with PKCE S256 required by default. Administrators manage users, groups, custom roles and permissions, and each application appears in a portal showing only the services a user is authorized to open. Password login is supported, with optional TOTP MFA that applies to all accounts when enabled. The UI is available in English and Simplified Chinese.
Burrow does not provide upstream identity federation, refresh tokens or cross-application logout. Applications manage their own sessions and business permissions.
Key features
- 01Shared SSO for Web and SPA applications via OIDC Authorization Code with PKCE S256.
- 02Password login with optional TOTP MFA applied to all accounts.
- 03Users, groups, custom roles and permissions with audited changes.
- 04Application portal that shows only the services a user may access.
- 05Single binary with embedded UI; PostgreSQL in production, SQLite for development.
- 06English and Simplified Chinese interface with light, dark and system themes.
Use cases
- Giving a small team one login for Grafana, Harbor and other self-hosted internal tools.
- Adding OIDC-based SSO to self-hosted services without running Redis or a message queue.
- Enforcing TOTP two-factor login for all accounts on an internal network.
Quick start
- 1
Download the deployment archive from Releases and extract it
tar -xzf "burrow_${BURROW_RELEASE}_deploy.tar.gz" - 2
Enter the deployment directory and create the env file
cp .env.example .env - 3
Edit .env with HTTPS issuer, secrets and database password, then start with Docker Compose
docker compose --profile local-db up -d --no-build --pull never
Things to know
- Refresh Tokens, upstream identity federation and cross-application logout are not supported.
- Designed for single-organization, single-instance use by small teams.
- Production use requires configuring your own HTTPS reverse proxy and secrets.
- Early-stage project with few stars and a 0.1.x release version.
Topics
FAQ
- What is burrow?
- A lightweight, self-hosted OpenID Connect identity provider for small teams, with password login, mandatory TOTP and RBAC. Burrow is a self-hosted OpenID Connect identity provider aimed at small teams and internal services. It centralizes user accounts, shared single sign-on and application access in one single-organization, single-instance service. The Go backend and React UI ship as one binary, or can run alongside PostgreSQL through Docker Compose.
- Is burrow free to use? What license does it have?
- burrow is open source under the MIT license. Check the license terms before using it in commercial products.
- Is burrow still maintained?
- Actively maintained. The last commit to burrow was on Oct 11, 2026.
- What can I use burrow for?
- Giving a small team one login for Grafana, Harbor and other self-hosted internal tools. Adding OIDC-based SSO to self-hosted services without running Redis or a message queue. Enforcing TOTP two-factor login for all accounts on an internal network.
- How do I install burrow?
- Download the deployment archive from Releases and extract it: tar -xzf "burrow_${BURROW_RELEASE}_deploy.tar.gz" Enter the deployment directory and create the env file: cp .env.example .env Edit .env with HTTPS issuer, secrets and database password, then start with Docker Compose: docker compose --profile local-db up -d --no-build --pull never
- Where can I get burrow?
- The source code and installation instructions are on GitHub: https://github.com/ArkGravity/burrow
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A tiny authentication and authorization server that works as middleware for Traefik, Nginx and Caddy, or as a standalone SSO login server.
Self-hostable authentication server covering passwordless login, passkeys, MFA, SSO and social login, with a pre-built login UI and admin portal.
Open-source authentication and authorization server adding two-factor login and single sign-on to web apps via a portal used with reverse proxies.
A framework-agnostic authentication and authorization framework for TypeScript, with a plugin system for features like 2FA and multi-tenancy.
An open source Go backend shipped as a single executable, with embedded SQLite, realtime subscriptions, file and user management, and an admin UI.