goth
casbin
Our great sponsors
goth | casbin | |
---|---|---|
7 | 38 | |
4,943 | 16,818 | |
- | 1.4% | |
6.2 | 7.3 | |
19 days ago | 17 days ago | |
Go | Go | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
goth
-
How to build Auth in 2023 with go?
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)
-
Why use a 'global' anonymous function instead of a named one?
In the package 'markbates/goth' that provides a client implementation of OAuth 2.0, the authors have defined the function CompleteUserAuth at the package level like this:
- Authentication in Go? Best practices
-
Single sign on with LinkedIn
You can use oauth2. Just take e.g. a look at the dex documentation dex. Dex is not a library but a standalone federated oidc provider. Highly recommended. For libraries take a look at goth.
- Simple web app, how to do auth?
-
The impossible case of pitching rust in a web dev shop
For the kind of websites I prefer to build -- server side rendered with HTMX/Alpine for the extra niceness -- Rust I think could be a very good fit. The main downside for my personal projects is the ecosystem. E.g., a good standard way to handle CSRF tokens, standardised oauth2 implementations (like https://github.com/markbates/goth in Go), things like that. I found myself having to write a lot of code that just exists in the Go ecosystem. The main downside for a business is that it's going to make it harder to hire, since Rust genuinely requires more skill. Yes, developers will make mistakes in Go, as it's far too easy to do things like access shared memory in dangerous ways. But on the flip side, it's a lot easier for them to deliver a feature. In a choice between shipping a feature that is buggy in hard to detect ways, vs not being able to deliver at all because you can't get developers, I think it's better to ship.
- เขียน Go ต่อ Oauth ทุกค่าย
casbin
-
A guide to Auth & Access Control in web apps 🔐
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.
-
Help needed - is there a product that provides the auth functionality we need?
Looks like you’re looking for a role-based access control (RBAC) module on your backend. What you would do is attach roles to your users/tokens which would allow or deny any specific action on a resource. Take a look at https://casbin.org/ that might be useful.
-
Keycloak – Open-Source Identity and Access Management Interview
Looking at your username, it would be nice to mention that you are one of the main developers behind the tool instead of making it sound like you are unrelated: https://github.com/casbin/casbin/graphs/contributors https://github.com/casdoor/casdoor/graphs/contributors
- Why elixir over Golang
-
Recommendations for a fine-grained authorization engine?
We use casbin . We’re using python version, but it has libraries for many languages. There are some adapters for loading policies from a datastore but we are not using any of them
-
Help me choose Auth Tech Stack for SaaS?
- Casbin handles RBAC, ABAC: https://casbin.org/
- I created Atomic: Self Hosted Open Source Alternative to Reclaim, Clockwise & Motion
-
Permissions (access control) in web apps
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.
-
RBAC and OAuth2.0 Scope based Access control with Go-Chi
You can probably look into casbin
- Something like Keycloak but in Go?
What are some alternatives?
oauth2 - Go OAuth2
OPA (Open Policy Agent) - Open Policy Agent (OPA) is an open source, general-purpose policy engine.
go-oauth2-server - A standalone, specification-compliant, OAuth2 server written in Golang.
casdoor - An open-source UI-first Identity and Access Management (IAM) / Single-Sign-On (SSO) platform with web UI supporting OAuth 2.0, OIDC, SAML, CAS, LDAP, SCIM, WebAuthn, TOTP, MFA and RADIUS [Moved to: https://github.com/casdoor/casdoor]
authboss - The boss of http auth.
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.
jwt-go - ARCHIVE - Golang implementation of JSON Web Tokens (JWT). This project is now maintained at:
CASL - CASL is an isomorphic authorization JavaScript library which restricts what resources a given user is allowed to access
gologin - Go login handlers for authentication providers (OAuth1, OAuth2)
zanzibar - A build system & configuration system to generate versioned API gateways.
jwt-auth - This package provides json web token (jwt) middleware for goLang http servers