GitHub - voidauth/voidauth: An Easy to Use and Self-Host Single Sign-On Provider 🐈‍⬛🔒 (github.com)
from notquitenothing@sh.itjust.works to selfhosted@lemmy.world on 12 Jul 13:01
https://sh.itjust.works/post/42016491

A new open-source Single Sign-On (SSO) provider designed to simplify user and access management.

Features:

Screenshot of the login portal:

#selfhosted

threaded - newest

Eideen@lemmy.world on 12 Jul 17:46 next collapse

This i need to try!

notquitenothing@sh.itjust.works on 12 Jul 18:45 collapse

Let me know how it goes!

cadekat@pawb.social on 12 Jul 18:20 next collapse

How does it compare to keycloak?

notquitenothing@sh.itjust.works on 12 Jul 18:43 collapse

While I haven’t spun up Keycloak myself, I think VoidAuth would supply some similar functionality. Ideally the features of Keycloak that you are likely to need but easier to setup and use!

corsicanguppy@lemmy.ca on 12 Jul 20:22 next collapse

This thing looks great but it has layers of supply-chain sploit risk. Make sure you’re really secure before trying it – and if you’re (otherwise) iso27002 compliant, give it a pass.

notquitenothing@sh.itjust.works on 12 Jul 21:57 next collapse

I would not recommend using VoidAuth to anyone who needs to be any kind of security compliant. I am not a security professional and am using packages for the OIDC and other security heavy-lifting. I can recommend VoidAuth for those just looking for a simple but good looking auth app for securing their own selfhosted apps and resources.

fluckx@lemmy.world on 12 Jul 22:52 collapse

I’m trying to wrap my head around your comment to understand. What exactly do you mean by supply chain sploit risk?

The tool is using 3rd party libraries and those libraries could be used to introduce vulnerabilities in the app?

lime_red@lemmy.world on 13 Jul 20:59 collapse

This is the correct read.

This is also the same as any other software package in existence. In fact, if someone claimed to not use any libraries, I’d be taking a close look at that too.

The key difference is if you’re a paying a company for support and certification of the product as delivered, you can yell at them about it. If you’re using a free product with no support, you can yell at yourself.

eldereko@lemmy.dbzer0.com on 12 Jul 21:05 next collapse

the Postgres requirement is a dealbreaker for me. I don’t get why all these “simple” self-hosted apps need a bloated database. how many users is a self-hoster going to have, maybe 1-10? SQLite can easily handle thousands. I’m currently using Authelia, and it even has a database-less YAML option for managing users

notquitenothing@sh.itjust.works on 12 Jul 21:35 next collapse

I do agree. I have been thinking about adding a SQLite option which should be somewhat easy since knex (the database package that VoidAuth uses) supports it. Before releasing that I would want to create some way to migrate your data from one database type to another. If you want to use VoidAuth feel free to make an issue for this!

Zelaf@sopuli.xyz on 12 Jul 22:12 collapse

Having run minor projects using PocketBase before and also seen what PocketBase itself can do and SQLite configured correctly in general, It’s great. I’ve gotten to be a big fan of it by the years and gladly opt for it over the bigger ones.

If this project got SQLite support it would be a great replacement for my own setup which requires about 3 or 4 accounts. Currently using a proprietary solution and been looking into moving to Authentik but it’s a bit too heavy resource wise for my current servers.

notquitenothing@sh.itjust.works on 12 Jul 22:37 next collapse

I will make an issue for adding SQLite support, it has been on my mind for the same reasons. I would say don’t let the Postgres requirement stop you from trying it out. Modern hardware really doesn’t mind having multiple containerized postgresdb instances running, it can be very lightweight when idle.

illusionist@lemmy.zip on 13 Jul 05:14 collapse

Tbo, not using a tool because it only uses postgres sounds strange to me.

lambalicious@lemmy.sdf.org on 13 Jul 13:55 collapse

It does mean a form of provider lock-in, which is or can be its own issue. Also, while PostgreSQL is one of the best database engines out there among the FOSS stuff, it is verifiably and vastly overblown for stuff like “store a name and a email”, and I at least am not aware of any sort of “Postgres Lite” engines else I’d be using them at work.

illusionist@lemmy.zip on 13 Jul 16:06 collapse

How does it lock you in? You, the admin, has full control over postgres. Sqlite has no security features. Does it store passwords? Sqlite also locks the database which is usually OK if there are no concurrent jobs. But for such services it sounds like a bad idea to use sqlite. (I am no server/app dev)

lime_red@lemmy.world on 13 Jul 20:53 next collapse

Sqlite shouldn’t lock for read, so unless you are writing something at each access, you can have thousands of concurrent reads. The Sqlite website spells this out, and lists its own self as the proof.

This would mean you could not write logs to the database, you’d have to do it the unixy way and put logs in a text file.

lambalicious@lemmy.sdf.org on 18 Jul 22:11 collapse

It locks you to postgres. You don’t necessarily have full control over postgres unless you are using your own instance / service, but oftentimes you might need to connect to an external one. SQLite gives you a local option.

Also what do you even mean with “does it store passwords?” A password is just a TEXT or a BLOB if you are feeling charitable and SQLite does support those since forever. If you can store “hello world” you can store a password (just… don’t do it in plaintext, but storage is different from encryption).

kayohtie@pawb.social on 12 Jul 23:08 collapse

Yeah, I use Authentik currently and the main reason is simplicity of having it with LDAP. But I’ve considered running something else backed by FreeIPA to get more compatibility for LDAP. I feel like I have to fight to get something to work with it.

But it has some high overhead for sure.

keyez@lemmy.world on 14 Jul 14:40 collapse

On my server I run a single postgres container and create DBs and users for different apps within. Super resource light and I have 7 apps pointed at a single container. Much easier to manage backups as well when there are several apps in the single DB.

notquitenothing@sh.itjust.works on 14 Jul 16:12 collapse

You can do this with VoidAuth as well, by setting the DB_NAME variable

Hawk@lemmy.dbzer0.com on 13 Jul 14:40 next collapse

Definitely giving this a go, seems exactly what I’ve been looking for for my small self hosted stack.

notquitenothing@sh.itjust.works on 13 Jul 15:32 collapse

If you run into any issue during setup let me know! I am still working on the documentation so hopefully it is somewhat understandable 😆

camr_on@lemmy.world on 14 Jul 03:23 collapse

I just (partially) got authentik running – how does it compare?

notquitenothing@sh.itjust.works on 14 Jul 12:07 collapse

VoidAuth is simpler to setup/use than Authentik for sure, but of course Authentik has more features. They both support proxy-auth, OIDC, and have user management UIs so in that way they are similar. I like VoidAuth for its simplicity but you can always run both and decide, if you have any questions about setup I will try to answer!

camr_on@lemmy.world on 14 Jul 12:32 collapse

I’ll definitely check it out today - I found the authentik learning curve to be surprisingly difficult. All I need is a basic set up for getting my friends and family into audiobookshelf, immich, etc, so this may be a welcome improvement

MysteriousSophon21@lemmy.world on 14 Jul 20:30 collapse

If you’re setting this up for audiobookshelf, you might wanna check out the Soundleaf app for iOS - it’s been a game changer for me with my self-hosted audiobookshelf server.