frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Ask HN: Why is web auth not a solved issue?

2•zwnow•1y ago
Personally, every project I start, I quit due to not being comfortable with the auth implementation.

I've been into web development for 4 years now. During my research regarding auth in this timeframe, I have found a million reasons on why I should not roll it myself. The reason is always it being to difficult to implement, too much responsibility and basically no matter how I'd do it, it would be unsafe.

The general consensus among web developers seems to be to just let a third party do it. And I understand the reasoning, they are experts and have decades of experience on that specific thing. It makes sense as long as you're fine with third party service dependencies for your application. However, I don't want that. I do not feel comfortable submitting my users data to tech giants for obvious reasons.

I am wondering why it's so difficult to implement secure auth? Why can frameworks like Laravel or Phoenix just generate auth solutions? Why should I trust them, if everyone is saying I shouldn't roll it myself?

After all, if Laravels or Phoenix generated auth isn't safe, I am the one taking responsibility anyway, no?

To my understanding web auth has been an issue for decades now, why aren't there protocols in place to solve it? Or if they are, why aren't they talked about a lot?

Considering how often I read about auth breaches with the big players in the game (Firebase as an example) I am not comfortable trusting third parties with that task either.

So how is one supposed to do it? There are so many JWT tutorials on youtube, but apparently JWTs aren't safe either. Then there are session cookies, which also aren't safe? Why is that?

I am also not talking about authorization. I specifically mean authentication. If I wanted a micro blog platform where users can log into their accounts and write about stuff, how would I make sure it's secure without having to trust third parties, especially big tech companies who repeatedly prove they cant be trusted over and over again?

Comments

arrowsmith•1y ago
> if Laravels or Phoenix generated auth isn't safe

What makes you think they're not safe? Zillions of successful apps have been built using Laravel and Phoenix and (afaik) no-one has hacked their auth code yet. The code is open-source for anyone to inspect for vulnerabilities. I wouldn't feel unsafe using them.

You seem to misunderstand what it means to "roll your own auth".

"Don't roll your own auth" doesn't mean "use a third-party auth provider". It means "use an existing, expert-made auth solution and don't try to write it yourself."

That can be a third-party provider like Firebase, it can be a code dependency like Rails's Devise, it can be generated by `phx.gen.auth` in Phoenix, it doesn't matter - the point is that you're using a tried-and-tested auth solution written by someone who knows what they're doing.

Writing your own auth code is generally a bad idea because it's complicated, time-consuming and easy to get wrong. But there are zillions of off-the-shelf solutions you can use that have been created by security experts and battle-tested in thousands of production apps. As far as I'm concerned, web auth is a solved problem.

zwnow•1y ago
Interesting. When I generate auth for Phoenix the API endpoints are not piped through any security pipes. Only the browser endpoints. Why wouldn't I secure my API endpoints? The same kind of requests that are made for browser requests are sent to the API routes, so this is really confusing.
arrowsmith•1y ago
Ah yes. `phx.gen.auth` generates a cookie-based auth system, which is fine for the :browser pipeline but it's not generally what you want for a JSON API.

The Phoenix docs include a suggestion for how you can extend `phx.gen.auth` to add token-based authentication to your API: https://hexdocs.pm/phoenix/api_authentication.html

(No, this isn't "rolling your own auth" either, it's using someone else's pre-written auth code.)

johncoltrane•1y ago
> The general consensus among web developers seems to be to just let a third party do it.

Outside of personal projects, third-party auth providers must be audited (think GDPR or PIPL), budget must be allowed, contracts signed, etc. so web developers rarely, if ever, have their say on the matter. The decision is taken long before anyone wrote a single line of code. From a project management perspective, it's an easy trade-off to make: one sprint for integrating Okta versus who knows how many for badly implementing something that requires a level of expertise that no one on the team has reached.

For personal projects, the trade-off is a bit different. Resources are scarce so, even if implementing auth is actually not very complicated(1) and can even be quite fun, there are probably more immediately interesting things to do. So you integrate a third-party solution in a wednesday night and you move on.

[1] https://thecopenhagenbook.com/

Aiointerpreters – Run CPU bound code in subinterpreters using asyncio

https://github.com/Jamie-Chang/aiointerpreters
2•rzk•2m ago•0 comments

SpaceX Set to Launch Upgraded Starship on Pre-IPO Test Flight

https://www.wsj.com/business/spacex-starship-v3-launch-6cd89008
2•JumpCrisscross•4m ago•0 comments

Companies join a deep-sea mining rush, as regulators fast-track permits

https://apnews.com/article/trump-deepsea-mining-executive-orders-oceans-environment-399faab6fc329...
2•petethomas•5m ago•0 comments

Bun unsafe audit (not the blog post)

https://bun.com/bun-unsafe-audit
2•heldrida•5m ago•0 comments

Help testing a reference agent for moshpit.dev

2•davidvanwie•9m ago•0 comments

China sinks 2k servers beneath the ocean as AI power demands push ...

https://www.techradar.com/pro/china-unveils-worlds-first-underwater-data-center-2-000-server-faci...
3•ColinWright•9m ago•0 comments

Shiny Forever: How Tamatoa Won

https://firasd.substack.com/p/shiny-forever-how-tamatoa-won-moana-maui-disney-crab-villain-song-j...
2•firasd•10m ago•0 comments

The SpaceX IPO It's Worse Than You Think [video]

https://www.youtube.com/watch?v=-X6YzlY_8tM
4•ZeljkoS•10m ago•0 comments

My Son's Hockey Team and the Crisis of American Resentment

https://www.theatlantic.com/ideas/2026/05/children-private-equity-sports/687222/
2•breve•11m ago•0 comments

Show HN: Smithereen – an early-Facebook-style Fediverse server

https://smithereen.software
3•grishka•11m ago•0 comments

I Got Sycophanted

https://whattotelltherobot.com/p/i-got-sycophanted
2•stefie10•11m ago•0 comments

Benchmarking Free-Threading Performance with Tachyon

https://blog.changs.co.uk/benchmarking-free-threading-performance-with-tachyon.html
2•rzk•13m ago•0 comments

Internet Sleuths Reconstruct Audio of Ups Plane Crash, NTSB Takes Down Dockets

https://www.paddleyourownkanoo.com/2026/05/21/federal-crash-investigators-discover-internet-sleut...
4•buildsjets•14m ago•1 comments

Cheap code means formal verification is reasonable now

https://antfly.io/blog/agent-formal-verification
3•dovin•15m ago•0 comments

August Sander's Enormous Attempt to Capture a Lost World

https://www.newyorker.com/culture/the-art-world/august-sanders-enormous-attempt-to-capture-a-lost...
2•petethomas•15m ago•0 comments

ConverseJS 13.0.0 – Web-based XMPP/Jabber chat written in JavaScript

https://github.com/conversejs/converse.js/releases/tag/v13.0.0
3•neustradamus•17m ago•0 comments

An LLM on a Sony PSP

https://granda.org/en/2026/05/16/an-llm-on-a-sony-psp/
2•austinallegro•19m ago•0 comments

Igor Babuschkin Seeks Up to $1B for River AI

https://letsdatascience.com/news/igor-babuschkin-seeks-up-to-1-billion-for-river-ai-8c36ce09
3•gmays•19m ago•0 comments

NPM registry sets stage for more secure package publishing

https://www.theregister.com/ai-ml/2026/05/21/npm-registry-sets-stage-for-more-secure-package-publ...
2•Bender•20m ago•0 comments

Zillow loses listings in fight over "hidden" homes

https://arstechnica.com/tech-policy/2026/05/zillow-loses-access-to-thousands-of-home-listings-ami...
2•Bender•21m ago•0 comments

AT&T sues California in attempt to shut off old phone network

https://arstechnica.com/tech-policy/2026/05/att-sues-california-in-attempt-to-shut-off-old-phone-...
2•Bender•22m ago•0 comments

EPA to End Some Limits on 'Forever Chemicals' in Drinking Water

https://www.nytimes.com/2026/05/18/climate/epa-forever-chemicals-pfas-drinking-water.html
4•igonvalue•24m ago•0 comments

How to Call an API from an Email

https://redo.com/eng-blog/how-to-call-an-api-from-an-email/
4•joshmoody24•24m ago•0 comments

Finland's bomb shelters draw world to Helsinki in quest for security

https://www.reuters.com/world/europe/finlands-massive-bomb-shelters-draw-world-helsinki-quest-sec...
2•JumpCrisscross•28m ago•0 comments

Tesla Announces Rollout of Fully Self-Driving Tech in China

https://www.wsj.com/business/autos/tesla-announces-rollout-of-fully-self-driving-tech-in-china-27...
3•bookofjoe•29m ago•1 comments

Show HN: Lumox – Wirelessly mirror multiple iPhones on Mac – Ditching QuickTime

https://lumox.app/
2•modrena•29m ago•0 comments

Better CLI Interactions for Agents and Humans

https://www.pulumi.com/blog/better-cli-interactions-for-agents-and-humans/
3•cnunciato•29m ago•0 comments

GrapheneOS Power Usage Recommendations

https://discuss.grapheneos.org/d/35721-grapheneos-power-usage-recommendations
6•Cider9986•29m ago•0 comments

Creating a Full PII Framework for Agents

https://pii-firewall.com/
2•lamne•29m ago•0 comments

AI is killing the cheap smartphone

https://davidoks.blog/p/ai-is-killing-the-cheap-smartphone
4•d0ks•33m ago•0 comments