Cute Gopher Mascot

The Best Go Libraries For Authentication and Authorization - Authentication and Authorization (41)

Discover the best Go libraries for Authentication and Authorization in Authentication and Authorization! Find the perfect tools to streamline your development and boost productivity. From jwx to go-guardian, we've got you covered. Let the coding begin!

jwx

Go module implementing various JWx (JWA/JWE/JWK/JWS/JWT, otherwise known as JOSE) technologies

Discover More! 🚀

go-guardian

Go-Guardian is a golang library that provides a simple, clean, and idiomatic way to create powerful modern API and web authentication that supports LDAP, Basic, Bearer token, and Certificate based authentication

Discover More! 🚀

go-jose

Fairly complete implementation of the JOSE working group's JSON Web Token, JSON Web Signatures, and JSON Web Encryption specs

Discover More! 🚀

gologin

chainable handlers for login with OAuth1 and OAuth2 authentication providers

Discover More! 🚀

gorbac

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

Discover More! 🚀

goth

provides a simple, clean, and idiomatic way to use OAuth and OAuth2. Handles multiple providers out of the box

Discover More! 🚀

jeff

Simple, flexible, secure, and idiomatic web session management with pluggable backends

Discover More! 🚀

jwt

Lightweight JSON Web Token (JWT) library

Discover More! 🚀

jwt-auth

JWT middleware for Golang http servers with many configuration options

Discover More! 🚀

loginsrv

JWT login microservice with pluggable backends such as OAuth2 (Github), htpasswd, osiam

Discover More! 🚀

oidc

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

Discover More! 🚀

openfga

Implementation of fine-grained authorization based on the "Zanzibar: Google's Consistent, Global Authorization System" paper. Backed by [CNCF](https://www.cncf.io/)

Discover More! 🚀

osin

Golang OAuth2 server library

Discover More! 🚀

otpgo

Time-Based One-Time Password (TOTP) and HMAC-Based One-Time Password (HOTP) library for Go

Discover More! 🚀

paseto

Golang implementation of Platform-Agnostic Security Tokens (PASETO)

Discover More! 🚀

scope

Easily Manage OAuth2 Scopes In Go

Discover More! 🚀

scs

Session Manager for HTTP servers

Discover More! 🚀

securecookie

Efficient secure cookie encoding/decoding

Discover More! 🚀

session

Go session management for web servers (including support for Google App Engine - GAE)

Discover More! 🚀

sessions

Dead simple, highly performant, highly customizable sessions service for go http servers

Discover More! 🚀

sessionup

Simple, yet effective HTTP session management and identification package

Discover More! 🚀

sjwt

Simple jwt generator and parser

Discover More! 🚀

jwt-go

A full featured implementation of JSON Web Tokens (JWT). This library supports the parsing and verification as well as the generation and signing of JWTs

Discover More! 🚀

authboss

Modular authentication system for the web. It tries to remove as much boilerplate and "hard things" as possible so that each time you start a new web project in Go, you can plug it in, configure it, and start building your app without having to build an authentication system each time

Discover More! 🚀

casbin

Authorization library that supports access control models like ACL, RBAC, and ABAC

Discover More! 🚀

cookiestxt

provides a parser of cookies.txt file format

Discover More! 🚀

jwt

Safe, simple, and fast JSON Web Tokens for Go

Discover More! 🚀

oauth2

Successor of goauth2. Generic OAuth 2.0 package that comes with JWT, Google APIs, Compute Engine, and App Engine support

Discover More! 🚀

otpgen

Library to generate TOTP/HOTP codes

Discover More! 🚀

x509proxy

Library to handle X509 proxy certificates

Discover More! 🚀

go-iam

Developer-first Identity and Access Management system with a simple UI

Discover More! 🚀

go-jwt

JWT authentication package providing access tokens and refresh tokens with fingerprinting, Redis storage, and automatic refresh capabilities

Discover More! 🚀

branca

branca token [specification implementation](https://github.com/tuupola/branca-spec) for Golang 1.15+

Discover More! 🚀

go-githubauth

Utilities for GitHub authentication: generate and use GitHub application and installation tokens

Discover More! 🚀

authgate

A lightweight OAuth 2.0 Authorization Server supporting Device Authorization Grant ([RFC 8628](https://datatracker.ietf.org/doc/html/rfc8628)), Authorization Code Flow with PKCE ([RFC 6749](https://datatracker.ietf.org/doc/html/rfc6749) + [RFC 7636](https://datatracker.ietf.org/doc/html/rfc7636)), and Client Credentials Grant for machine-to-machine authentication

Discover More! 🚀

go-jwt

A JWT (JSON Web Token) library for Go

Discover More! 🚀

goiabada

An open-source authentication and authorization server supporting OAuth2 and OpenID Connect

Discover More! 🚀

gosession

This is quick session for net/http in GoLang. This package is perhaps the best implementation of the session mechanism, or at least it tries to become one

Discover More! 🚀

permissions

Library for keeping track of users, login states, and permissions. Uses secure cookies and bcrypt

Discover More! 🚀

spicedb

A Zanzibar-inspired database that enables fine-grained authorization

Discover More! 🚀

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

Discover More! 🚀