SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Rust Authentication Projects
-
Ockam
Orchestrate end-to-end encryption, cryptographic identities, mutual authentication, and authorization policies between distributed applications – at massive scale.
-
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.
-
sudo_pair
Plugin for sudo that requires another human to approve and monitor privileged sudo sessions
-
GlobalProtect-openconnect
A GlobalProtect VPN client for Linux, written in Rust, based on OpenConnect and Tauri, supports SSO with MFA, Yubikey, etc.
-
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.
-
nforwardauth
Simple and minimalist forward auth service intended for use with reverse proxies (Traefik, Caddy, nginx, etc)
-
firestore-db-and-auth-rs
Easy Rust access to your Google Firestore DB via service account or OAuth impersonated Google Firebase Auth credentials
-
axum-shuttle-postgres-authentication-demo
Full stack authenticated site built in Rust with Axum, Postgres and Shuttle
-
srp6-rs
A safe implementation of the secure remote password authentication and key-exchange protocol (SRP and SRP6a)
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
disclosure: I work at Ockam.
The Portals for Mac app is an example of the type of thing you could build using the open source stack of protocols. The README (linked by parent) links out to all of the relevant parts of the protocol documentation to explain how these work together. The NAT Traversal (https://github.com/build-trust/ockam/blob/develop/examples/a...) part of the README is probably the best explanation of why the free relay you get via Ockam Orchestrator is a useful part of this demo.
As for why would anyone trust this: The protocols are designed so you absolutely don't have to trust the relay. Trust is pushed out to the edges that you control and so you're not susceptible to a MITM attack if something like a relay is compromised. The protocol design for all of this is open and documented, and was independently audited by (IMO) some of the best in the business, Trail of Bits: https://docs.ockam.io/reference/protocols.
Good to hear, I think it'll make many users happy. For me, I've migrated back to Authelia. I moved to authentik because at the time Authelia had no user management. After all of authentik's sharp edges, I've found lldap[0], and was able to implement a pilot in a few hours. I haven't looked back, since everything was converted.
[0]: https://github.com/lldap/lldap
Check this: https://github.com/kanidm/kanidm/ Maybe not production ready, but looks very promising
In order to reach a client's domain for a project, my team needs to use a VPN and the instructions were pretty clear regarding which tool to use - GlobalProtect VPN - so I've installed https://github.com/yuezk/GlobalProtect-openconnect and was able to connect successfully.
Project mention: Show HN: Axum-login, simple and flexible user auth for your Rust axum projects | news.ycombinator.com | 2024-02-19
Project mention: Show HN: Storing Private Keys in the Browser Securely | news.ycombinator.com | 2024-04-23
Project mention: Authorization is still a nightmare for engineers | news.ycombinator.com | 2024-04-16> We have a post on this coming soon! The short version is that Polar is a logic language based on Prolog/Datalog/miniKanren. And logic languages are a particularly good fit for representing the branching conditional logic you often see in authorization configurations.
Ha, I've been playing around with Biscuits (https://www.biscuitsec.org/) and was writing up a blog post on using them in a git forge. When I saw the Polar data units described as "facts" and read your end to end example (https://www.osohq.com/docs/tutorials/end-to-end-example) I thought "Oh this looks very similar". I will say - I do like how Polar seems to type stuff and provide some concepts that Biscuits force you to build out on your own, that's pretty neat.
What is the proof of identity in Polar? Is it something like a token in Biscuits? I'm curious if you can do things like add caveats to reduce what the token is capable of as it gets handed off to different systems. I consider that one of the "killer use cases" of biscuits.
Project mention: Rauthy OIDC v0.19 — Better support for Solid and Matrix | /r/SelfhostingHub | 2023-11-18
Project mention: nforwardauth - simple and minimalist forward auth service intended for use with reverse proxies (Traefik, Caddy, etc). added basic auth and logout support | /r/SelfhostingHub | 2023-08-04
i haven't done rbac with rust but stuff like this looks promising: https://github.com/casbin-rs/axum-casbin (seems you'd use it in conjunction with the authorization tower middleware)
Rust Authentication related posts
- Authorization is still a nightmare for engineers
- Alt to Ngrok, Written in Rust
- Show HN: Axum-login, simple and flexible user auth for your Rust axum projects
- How we built a Swift app that uses Rust
- Biscuit Authorization
- Shared data through ( ASKAMA template engine ) like username for all pages?
- Anyone else using LLDAP and if so... (can it do TrueNAS & Linux User/Login authentication?)
-
A note from our sponsor - SaaSHub
www.saashub.com | 25 Apr 2024
Index
What are some of the best open-source Authentication projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | Ockam | 4,347 |
2 | lldap | 3,473 |
3 | kanidm | 2,097 |
4 | rust-jwt | 1,540 |
5 | sudo_pair | 1,230 |
6 | GlobalProtect-openconnect | 1,127 |
7 | axum-login | 440 |
8 | internet-identity | 366 |
9 | openidconnect-rs | 333 |
10 | frank_jwt | 250 |
11 | biscuit-rust | 201 |
12 | cotp | 169 |
13 | rauthy | 165 |
14 | nforwardauth | 101 |
15 | firestore-db-and-auth-rs | 95 |
16 | pam | 80 |
17 | rocket_auth | 74 |
18 | sqlx-adapter | 44 |
19 | axum-casbin | 31 |
20 | axum-shuttle-postgres-authentication-demo | 19 |
21 | pam-sys | 15 |
22 | srp6-rs | 14 |
23 | forbidden | 10 |
Sponsored