frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Kratos - Cloud native Auth0 open-source alternative (self-hosted)

https://github.com/ory/kratos
45•curtistyr•2h ago

Comments

caleblloyd•1h ago
I used Ory Kratos in a Go application a couple years ago by installing it as a dependency. It worked pretty well but in hindsight I would have hosted it as a separate application because it was a pain to bring along all of its dependencies.

One of my biggest complaints was that one of the Account Recovery flows was just an emailed 6-digit code. So a 1 in 1 million chance that somebody without access to any of your stuff could hack you by just hitting reset and guessing "123456". It's actually surprising how many other Account Recovery flows across the web I have noticed recently that do the same thing. Not sure if Ory has added the option for more entropy in this code as of today's release though it's been a while since I've used it.

Otherwise it was a great project to work with that has tons of knobs to customize. I commend the authors, aeneasr especially. It must be a ton of work to keep up with all of the auth standards and offer this in an Apache2 licensed package all while building a business around it as well!

fady0•1h ago
Aren’t these codes supposed to have a timeout, like you have to use them within 10 minutes or they become invalid?
jdmoreira•47m ago
I've implemented otp codes / magic links many times now. They absolutely always have a timeout. Say 30 minutes.
caleblloyd•15m ago
Sure, but say the implementation lets you try 5 codes in that 10 minutes with a 30 minute lockout. An attacker could trigger Account Recovery, blindly try 5 six-digit codes immediately, and have a 0.0005% chance getting into your account.

They could script this to run over a long period of time targeting 1 account, or they could target many accounts at once, and would probably have success.

nja•1h ago
I've used [Keycloak](https://www.keycloak.org/) in the past for "open-source Auth0" -- though I'm not sure it has ever described itself that way.

Keycloak ended up being quite extensible and powerful, but the UI and data model both sometimes made things more difficult than they had to be... this could be an interesting project to look at.

One bonus (for us) for Keycloak was that it was JVM-based, meaning it was easier to integrate our existing JVM libraries. Though its use of Hibernate was frustrating at times, heh

bitcrshr•1h ago
I tried Keycloak for a while, it’s really good too. Given it has an admkn dashboard, it’s a bit more “batteries included” than Ory.
rirze•55m ago
I'm very familiar with Keycloak, and I don't see this replacing it any time soon. As soon as I read: > The Ory Enterprise License (OEL) layers on top of self-hosted Kratos and provides:

    Additional enterprise features that are not available in the open source version such as SCIM, SAML, organization login ("SSO"), CAPTCHAs and more
I knew it couldn't compete. Good luck to this product.
ikiris•2m ago
Yeah that’s very disappointing and basically kills my interest in the product.
vinckr•47m ago
Yea part of the motivation to create Ory Kratos was that Keycloak was too clunky and cumbersome for us to use, also hard to scale and a bunch of other issues - so we wrote our own basically.

(i work for Ory as DevRel)

throwaway894345•33m ago
> One bonus (for us) for Keycloak was that it was JVM-based, meaning it was easier to integrate our existing JVM libraries. Though its use of Hibernate was frustrating at times, heh

I'm pretty frightened of running Java services, not because of the JVM, but because every Java app I've had to operate is infinitely configurable via some poorly documented XML file, and trying to reverse engineer the XML file is often difficult because you have to route through a bunch of Spring Boot magic (preventing an easy grep for configuration options). And on top of that the defaults are rarely system defaults, so even figuring out _where_ the application expects to find its configuration file is nontrivial and logging by default is separated into some unknown number of log streams which each go to a completely different path on disk by default and each one has its own configuration option for telling it to log to stderr.

By contrast, Go services are pretty explicit about where they expect their configuration, they usually log to stderr by default, you can pretty much drop them into any Docker image and run them without issue (no need to custom tune the JVM or bundle up dependencies and ensure the right runtime version). I'm told that the Java world is changing, but in the mean time I will put up with _a lot_ in the way of missing features in order to avoid running a Java application.

Sorry for the rant. :)

vbezhenar•10m ago
I've used environment variables to configure keycloak. Worked for me.
bitcrshr•1h ago
Kratos is awesome, especially alongside Hydra, OathKeeper, and Keto. Super powerful combo, if not a little intimidating at first. There’s a LOT of configuration involved, but that’s to be expected if you want to host your own Auth0 replacement.

Their dynamic forms stuff is really cool too, always liked how they chose to go about that. Only complaint I really ever had is that while their docs were overall serviceable, I remember some areas were pretty lacking and I had to dig really far to find answers to some fairly common issues.

throwaway894345•31m ago
I've often wondered why there isn't a simpler identity provider service that does the thing that ~90% of applications need without all of the complex configuration.
ChristianJacobs•24m ago
Have you tried Pocket-ID? I use it for my home server with LLDAP as the identity provider.
larrywinch•54m ago
This looks like great stuff.

In the TypeScript ecosystem, I'd probably take a look at Better Auth though, as the developer experience is really great!

otabdeveloper4•41m ago
Storing auth data in MySQL or Postgres is insane and defeats the purpose of trying to be secure.

Note to self: if I ever need a retirement project, open sourcing a properly architected auth solution would be it.

exographicskip•34m ago
As long as they're salted hashes, they could be stored anywhere right?

Would sqlite be a better option?

ilkhan4•29m ago
Where else would you store them that's more secure?
lordofgibbons•20m ago
Do I need to use the other services from the Ory stack to have this be complete? I tried reading the Ory docs a couple of times when I needed an auth solution but it was indecipherable to me as someone not living in the auth world
vinckr•11m ago
It depends what your requirements are.

If you are "just" doing first-party login, session, and user mgmt then Ory Kratos is all you need. I would say in the majority of cases you would be fine with just Ory Kratos.

If you want 3rd party integrations, or become an IDP (think "login with $yourcorp"), or you migrate an existing system that relies on OAuth2 that you want to keep, or you have more complex auth flows where OAuth2 shines, then you want Ory Hydra.

If you want a "fine-grained" global, centralized authz system, complex and scalable authz as described by Google Zanzibar, then you want Ory Keto.

If you want to support SAML as well, you want Ory Polis.

If you want a "zero trust" setup, then you want Ory Oathkeeper.

That being said in almost all cases Kratos will be fine and you can pick and choose what you actually need.

nylonstrung•13m ago
I tried to use Ory for my company and cannot recommend it. Zitadel has been far better
vinckr•7m ago
Hey, if you want to share a bit more feedback would love to hear it! feel free to also message me directly if you don't want to share it here.

tbh i don't know too much about it other than that they moved away from the apache2 license recently

(disclaimer: I'm working for Ory)

ffo•4m ago
Thank you for your trust.
axegon_•12m ago
I had to work with this at my old job(forked, messy-patched and outdated version). Honestly, I wasn't a big fan, mostly because of the horrible patches to make it do things it was never meant to do but also to some degree because of how unnecessarily over-complicated it was.
ethin•1m ago
I've tried Keycloak and quite a few other IAM solutions, and finally settled on Kanidm. Not because it was written in Rust but because the project was easy to learn and understand and it wasn't that hard to hook things up to it. It has it's quirks, but it's been phenomenal so far. The fact that it's super lightweight from my experience is also a big bonus.

Britain's railway privatization was an abject failure

https://www.rosalux.de/en/news/id/53917/britains-railway-privatization-was-an-abject-failure
298•robtherobber•2h ago•241 comments

Launch HN: Tweeks (YC W25) – Browser extension to de-enshittify the web

https://www.tweeks.io/onboarding
19•jmadeano•19m ago•5 comments

GitHub Partial Outage

https://www.githubstatus.com/incidents/1jw8ltnr1qrj
57•danfritz•1h ago•28 comments

European Nations Decide Against Acquiring Boeing E-7 Awacs Aircraft

https://defensemirror.com/news/40527/European_Nations_Decide_Against_Acquiring_Boeing_E_7_AWACS_A...
44•saubeidl•52m ago•33 comments

Checkout.com hacked, refuses ransom payment, donates to security labs

https://www.checkout.com/blog/protecting-our-merchants-standing-up-to-extortion
352•StrangeSound•6h ago•187 comments

Zed Is Our Office

https://zed.dev/blog/zed-is-our-office
20•sagacity•41m ago•1 comments

Blender Lab

https://www.blender.org/news/introducing-blender-lab/
83•radeeyate•2h ago•30 comments

Android developer verification: Early access starts

https://android-developers.googleblog.com/2025/11/android-developer-verification-early.html
1210•erohead•15h ago•547 comments

Denx (a.k.a. U-Boot) Retires

https://www.denx.de/
40•synergy20•2h ago•4 comments

SIMA 2: An Agent That Plays, Reasons, and Learns with You in Virtual 3D Worlds

https://deepmind.google/blog/sima-2-an-agent-that-plays-reasons-and-learns-with-you-in-virtual-3d...
24•meetpateltech•53m ago•4 comments

Kratos - Cloud native Auth0 open-source alternative (self-hosted)

https://github.com/ory/kratos
46•curtistyr•2h ago•26 comments

We cut our Mongo DB costs by 90% by moving to Hetzner

https://prosopo.io/blog/we-cut-our-mongodb-costs-by-90-percent/
44•arbol•1h ago•40 comments

COBOL to Kotlin via Formal Models (IR and Alloy and Golden Master)

https://marcoeg.medium.com/from-cobol-to-kotlin-795920b1f371
8•marcoeg•5d ago•1 comments

Heartbeats in Distributed Systems

https://arpitbhayani.me/blogs/heartbeats-in-distributed-systems/
26•sebg•2h ago•3 comments

Switching from GPG to Age

https://luke.hsiao.dev/blog/gpg-to-age/
64•speckx•1w ago•35 comments

Tesla Is Recalling Cybertrucks Again. Yep, More Pieces Are Falling Off

https://www.popularmechanics.com/cars/hybrid-electric/a69384091/cybertruck-lightbar-recall/
69•2OEH8eoCRo0•44m ago•28 comments

Human Fovea Detector

https://www.shadertoy.com/view/4dsXzM
349•AbuAssar•15h ago•76 comments

Android 16 QPR1 is being pushed to the Android Open Source Project

https://grapheneos.social/@GrapheneOS/115533432439509433
198•uneven9434•12h ago•95 comments

A Challenge to Roboticists: My Humanoid Olympics

https://spectrum.ieee.org/humanoid-robot-olympics
16•quapster•1w ago•4 comments

Telli (Voice AI – YC F24) is hiring engineers in Berlin

https://hi.telli.com/eng
1•sebselassie•6h ago

Steam Machine

https://store.steampowered.com/sale/steammachine
2428•davikr•22h ago•1128 comments

Seed. LINE's Custom Typeface

https://seed.line.me/index_en.html
74•totetsu•6h ago•33 comments

Shader Glass

https://github.com/mausimus/ShaderGlass
54•erickhill•5d ago•10 comments

Homebrew no longer allows bypassing Gatekeeper for unsigned/unnotarized software

https://github.com/Homebrew/brew/issues/20755
293•firexcy•18h ago•228 comments

Continuous Autoregressive Language Models

https://arxiv.org/abs/2510.27688
86•Anon84•1w ago•6 comments

Reverse Engineering Yaesu FT-70D Firmware Encryption

https://landaire.net/reversing-yaesu-firmware-encryption/
90•austinallegro•9h ago•14 comments

GPT-5.1: A smarter, more conversational ChatGPT

https://openai.com/index/gpt-5-1/
470•tedsanders•21h ago•586 comments

Randomness Testing Guide

https://random.tastemaker.design/
29•user070223•1w ago•9 comments

Steam Frame

https://store.steampowered.com/sale/steamframe
1736•Philpax•22h ago•628 comments

Transpiler, a Meaningless Word (2023)

https://people.csail.mit.edu/rachit/post/transpiler/
88•jumploops•6d ago•77 comments