News for hackers. Stuff that matters.
Re:Show HN: Clerk – all of user management as-a-service, not... by jerrac on Monday February 08, 2021 @07:05PM (#26072118)
So, first, congrats on launching your product. :) Personally, I don't have a need for it, and if I did, I'd be very reluctant to use a proprietary service, but I'm sure there are companies out there who will be happy to use you. Good luck!

------------

That said, maybe the HN community can answer something I've wondered about... Why isn't there an Open Source, standardized, self-hosted, version of this kind of service? Or, why hasn't one, or two, options emerged that everyone uses and I would have heard of by now?

User management, authentication, and authorization, are all problems that have been solved in many apps, and there are plenty of best practices. So, just like you shouldn't roll your own hashing algorithm, I'd think we'd want to do the same with this. It would make sense for one of the open source companies or organizations like Canonical, RedHat, Apache or Mozilla to have at least tried to do this.

The closest I can think of to an attempt is Persona...

Anyway, just been wondering about this for a while, and thought I'd take the opportunity to ask.

Re:Show HN: Clerk – all of user management as-a-service, not... by SahAssar on Monday February 08, 2021 @07:08PM (#26072134)
I haven't tried it but https://www.keycloak.org/ (by redhat) seems close to what you describe.
Re:Show HN: Clerk – all of user management as-a-service, not... by znpy on Tuesday February 09, 2021 @06:41AM (#26076332)
keycloak is great, it's very flexible and fairly lightweight (all things considered).

it can get a bit complex, but to be fair the whole oauth/oauth2.0/openid/openid-connect/saml is quite messy in general.

Re:Show HN: Clerk – all of user management as-a-service, not... by digaozao on Monday February 08, 2021 @09:06PM (#26073021)
I have been using it for a year. No problems so far, and found it to be really flexible
Re:Show HN: Clerk – all of user management as-a-service, not... by TedDoesntTalk on Monday February 08, 2021 @09:25PM (#26073158)
Keycloak FTW. Been using it for 18 months now in production.
Re:Show HN: Clerk – all of user management as-a-service, not... by aryamaan on Tuesday February 09, 2021 @01:55PM (#26081202)
Very tangent question but someone could help as the discussion is about Keycloak.

In particular, I am trying to solve the problem of how I can share client secrets (so they can generate access token using it) with the respective clients.

I don't want to share them over email/ password protected doc.

I tried making one client for each realm and adding one user to it. When I login via user account using GUI, I am unable to see any info related to clients.

What am I doing wrong here?

What are the good practices around this?

Thanks kind folks

Re:Show HN: Clerk – all of user management as-a-service, not... by mamcx on Tuesday February 09, 2021 @12:07AM (#26074112)
I have found confusing then support for multi-tenants and your own auth tables (ie: put the auth tables in the schema of each tenant?) across the board. Exist one project where I can do both?
Re:Show HN: Clerk – all of user management as-a-service, not... by afrodc_ on Monday February 08, 2021 @09:29PM (#26073186)
Keycloak is great and pretty extensible on a per basis need.
Re:Show HN: Clerk – all of user management as-a-service, not... by jineshshah36 on Monday February 08, 2021 @07:24PM (#26072288)
Check out the [org](https://www.ory.sh/hydra/) family of projects
Re:Show HN: Clerk – all of user management as-a-service, not... by jokethrowaway on Monday February 08, 2021 @07:33PM (#26072359)
I second ory, that's pretty much a solved problem in my book.

Fast self contained binaries, easy to interface with Kubernetes.

Adding some UI around them and managing them via api is nice enough.

The only incognita is whether they're going to handle scaling (I hope I'll have this problem one day).

Hydra is for OpenId though, I'd point to Kratos + Oathkeeper.

Re:Show HN: Clerk – all of user management as-a-service, not... by necovek on Tuesday February 09, 2021 @03:19PM (#26081968)
Canonical Identity Provider (https://launchpad.net/canonical-identity-provider) behind Ubuntu SSO is free software, but the documentation is lacking (it's an openid provider with oauth support for application tokens; not sure if it's been moved to openid connect). To get proper users and groups, you'd needed to extract Launchpad Registry from Launchpad itself (https://launchpad.net/launchpad), though I think some "teams" functionality was added to Identity Provider itself.

In general, if more sites grew proper OpenID auth vs justa subset of providers, we'd see more people run their own OpenID servers to authenticate against external services.

Basically, for an open source/free software service to succeed in this area, it needs to allow both federated and SaaS model because that's how free software people are :) And federated is hard because nobody accepts pure OpenID anymore (and it's funny: you'll trust an email address but not a URL as a unique identifier). But it's probably how hard it was to get working that's the issue.

Re:Show HN: Clerk – all of user management as-a-service, not... by eins1234 on Monday February 08, 2021 @08:28PM (#26072730)
I've been looking into SuperTokens lately. It's very new, but super promising imo: https://supertokens.io/
Re:Show HN: Clerk – all of user management as-a-service, not... by advaitruia on Wednesday February 10, 2021 @05:17AM (#26087441)
Thanks! Cofounder of SuperTokens here - please let us know if you have any feedback or questions. I can be reached at advait @ supertokens.io
Re:Show HN: Clerk – all of user management as-a-service, not... by sssk on Tuesday February 09, 2021 @05:21AM (#26075803)
https://www.userfrosting.com/ is a good open source solution in this space actually.
Re:Show HN: Clerk – all of user management as-a-service, not... by franciscop on Tuesday February 09, 2021 @01:05PM (#26080627)
"Why isn't there an Open Source, standardized, self-hosted, version of this kind of service? Or, why hasn't one, or two, options emerged that everyone uses and I would have heard of by now?"

Because it is a lot of hard, strict and continuous work. Specially if you want - and you kinda need to, if you want anyone to use you - to provide customization for: styling, different databases, languages (both programming and natural), login methods (SSO, email, etc), email delivery systems, user fields, etc.

So people building open source generally will just solve their own problem and might share that, not solve a problem space one up with all of these combination complexity mess. The most "standard" open source I know is Passport.js, but it only solves the problem of login methods.

Re:Show HN: Clerk – all of user management as-a-service, not... by keerthiko on Tuesday February 09, 2021 @01:22AM (#26074484)
ever since facebook acquired, then liberated Parse [0], it kind of fulfills this role.

You can roll any subsystem of it and use off-the-shelf providers for other subsystems (we pay a service to host the server, but we run our own dashboard server to poke into it, others run their own database and use just the API server, etc), but I suppose it's easiest if you run the whole parse backend as a whole.

[0]: https://parseplatform.org/

Re:Show HN: Clerk – all of user management as-a-service, not... by vineyardmike on Tuesday February 09, 2021 @05:08AM (#26075727)
I’ve always wondered why parse was never more popular as a backend for people hosting personal and small scale stuff?
Re:Show HN: Clerk – all of user management as-a-service, not... by jerrac on Tuesday February 09, 2021 @04:11PM (#26082427)
Thanks for all the replies. Sorry I'm a bit late responding.

So, there are options, some I now remember hearing of before.

I'm still interested in more of you thoughts on why they don't have a wider adoption rate.

Re:Show HN: Clerk – all of user management as-a-service, not... by robertlagrant on Tuesday February 09, 2021 @06:10AM (#26076117)
I'm keeping a close eye on ory.sh - it's an open source auth as a service that plugs into k8s etc nicely as well.
Re:Show HN: Clerk – all of user management as-a-service, not... by 3np on Tuesday February 09, 2021 @03:23AM (#26075089)
Maybe one of these fit your bill: keycloak, freeipa, gluu - they all have a bit of different scope and approach
Re:Show HN: Clerk – all of user management as-a-service, not... by silexia on Wednesday February 10, 2021 @03:19AM (#26086709)
Laravel (php) and Django (python) both have easy open source user and auth management.