Go Authentication and OAuth

Open-source Go projects categorized as Authentication and OAuth

Top 23 Go Authentication and OAuth Projects

  • casbin

    An authorization library that supports access control models like ACL, RBAC, ABAC in Golang: https://discord.gg/S5UjpzGZjN

    Project mention: A guide to Auth & Access Control in web apps 🔐 | dev.to | 2023-11-07

    https://casbin.org/ (multiple approaches, multiple languages, provider) Open source authZ library that has support for many access control models (ACL, RBAC, ABAC, …) and many languages (Go, Java, Node.js, JS, Rust, …). While somewhat complex, it is also powerful and flexible. They also have their Casdoor platform, which is authN and authZ provider.

  • oauth2

    Go OAuth2

    Project mention: How to Authenticate a CLI Using OAuth and GitHub in Golang | /r/golang | 2023-03-22

    The guide covers setting up GitHub, using the golang.org/x/oauth2 package, and handling OAuth authentication. The code snippets are easy to follow and can be modified to fit your project's needs.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • goth

    Package goth provides a simple, clean, and idiomatic way to write authentication packages for Go web applications.

    Project mention: How to build Auth in 2023 with go? | /r/golang | 2023-05-31

    Also really easy to implement as there are libraries that do all the heavy lifting for you (https://github.com/markbates/goth is a great starting place IMHO)

  • Ory Keto

    Open Source (Go) implementation of "Zanzibar: Google's Consistent, Global Authorization System". Ships gRPC, REST APIs, newSQL, and an easy and granular permission language. Supports ACL, RBAC, and other access models.

    Project mention: Show HN: Blueprint for a distributed multi-region IAM with Go and CockroachDB | news.ycombinator.com | 2023-08-08

    One of Ory’s core competencies is permissions. We built the first Google Zanzibar implementation in the world and it’s part of Ory Network‘s global multi-region platform (https://github.com/ory/keto)

    A push model is also valid if you’re heavy on policies and can accept eventual consistency. We will investigate how to generally push things to the edge (like we did with Ory Edge Sessions) or to cryptographic verification wherever staleness is acceptable.

    By solving the primitives correctly in the beginning (with a multi region architecture) that job does become a lot easier, which is what we decided doing at Ory :)

  • authboss

    The boss of http auth.

    Project mention: Best package for user mangement | /r/golang | 2023-06-11

    is authboss here the best option or there is a better one?

  • go-oauth2-server

    A standalone, specification-compliant, OAuth2 server written in Golang.

  • loginsrv

    JWT login microservice with plugable backends such as OAuth2, Google, Github, htpasswd, osiam, ..

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • scs

    HTTP Session Management for Go

    Project mention: Authentication system using Golang and Sveltekit - Login and Logout | dev.to | 2023-06-04

    Although there are pretty good session managers in the Go ecosystem such as alexedwards/scs, golangcollege/session and gorilla/sessions, we won't use any but using this great guide, we'll write our own. This is to keep our project's dependence on external packages at the barest minimum.

  • jwx

    Implementation of various JWx (Javascript Object Signing and Encryption/JOSE) technologies

    Project mention: Are there any OIDC Provider libraries for Golang? | /r/golang | 2023-05-15

    I made a custom OIDC provider for integ tests using https://github.com/lestrrat-go/jwx, and a server than served out a .well-known/openid-configuration file and a jwks.json referenced by the openid-configuration.

  • gologin

    Go login handlers for authentication providers (OAuth1, OAuth2)

    Project mention: gologin VS lalicat - a user suggested alternative | libhunt.com/r/gologin | 2023-05-10
  • gorbac

    goRBAC provides a lightweight role-based access control (RBAC) implementation in Golang.

  • oidc

    Easy to use OpenID Connect client and server library written for Go and certified by the OpenID Foundation

    Project mention: Easy to use OpenID Connect client and server library written for Go | /r/hackernews | 2023-12-04
  • auth

    Authenticator via oauth2, direct, email and telegram (by go-pkgz)

    Project mention: How to build Auth in 2023 with go? | /r/golang | 2023-05-31
  • paseto

    Platform-Agnostic Security Tokens implementation in GO (Golang) (by o1egl)

  • go-guardian

    Go-Guardian is a golang library that provides a simple, clean, and idiomatic way to create powerful modern API and web authentication.

  • permissions2

    :closed_lock_with_key: Middleware for keeping track of users, login states and permissions

  • jeff

    🍍Jeff provides the simplest way to manage web sessions in Go.

  • jwt-auth

    This package provides json web token (jwt) middleware for goLang http servers (by adam-hanna)

  • httpauth

    HTTP Authentication middlewares

  • branca

    :key: Secure alternative to JWT. Authenticated Encrypted API Tokens for Go.

  • webauthn

    Go package for easy WebAuthn integration (by koesie10)

  • otpgen

    Library to generate TOTP/HOTP codes

  • yubigo

    Yubigo is a Yubikey client API library that provides an easy way to integrate the Yubico Yubikey into your existing Go-based user authentication infrastructure.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-12-04.

Go Authentication and OAuth related posts


What are some of the best open-source Authentication and OAuth projects in Go? This list will help you:

Project Stars
1 casbin 16,583
2 oauth2 5,074
3 goth 4,772
4 Ory Keto 4,507
5 authboss 3,606
6 go-oauth2-server 2,082
7 loginsrv 1,909
8 scs 1,855
9 jwx 1,754
10 gologin 1,730
11 gorbac 1,541
12 oidc 1,134
13 auth 883
14 paseto 788
15 go-guardian 518
16 permissions2 499
17 jeff 259
18 jwt-auth 231
19 httpauth 219
20 branca 171
21 webauthn 165
22 otpgen 133
23 yubigo 125
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives