VOOZH about

URL: https://thenewstack.io/oso-tackles-unbundling-security-authorization/

⇱ Oso Unbundles Security Authorization - The New Stack


TNS
SUBSCRIBE
Join our community of software engineering leaders and aspirational developers. Always stay in-the-know by getting the most important news and exclusive content delivered fresh to your inbox to learn more about at-scale software development.
REQUIRED
It seems that you've previously unsubscribed from our newsletter in the past. Click the button below to open the re-subscribe form in a new tab. When you're done, simply close that tab and continue with this form to complete your subscription.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.
Welcome and thank you for joining The New Stack community!
Please answer a few simple questions to help us deliver the news and resources you are interested in.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Great to meet you!
Tell us a bit about your job so we can cover the topics you find most relevant.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Welcome!

We’re so glad you’re here. You can expect all the best TNS content to arrive Monday through Friday to keep you on top of the news and at the top of your game.

What’s next?

Check your inbox for a confirmation email where you can adjust your preferences and even join additional groups.

Follow TNS on your favorite social media networks.

Become a TNS follower on LinkedIn.

Check out the latest featured and trending stories while you wait for your first TNS newsletter.

PREV
1 of 2
NEXT
VOXPOP
As a JavaScript developer, what non-React tools do you use most often?
Angular
0%
Astro
0%
Svelte
0%
Vue.js
0%
Other
0%
I only use React
0%
I don't use JavaScript
0%
Thanks for your opinion! Subscribe below to get the final results, published exclusively in our TNS Update newsletter:
NEW! Try Stackie AI
From clobbered drafts to real-time sync
Apr 14th 2026 10:00am, by David Moore
TypeScript 6.0 RC arrives as a bridge to a faster future
Mar 14th 2026 9:00am, by Darryl K. Taft
Mastra empowers web devs to build AI agents in TypeScript
Jan 28th 2026 11:00am, by Loraine Lawson
2021-10-06 03:00:28
Oso Unbundles Security Authorization
profile,
API Management / Security / Software Development

Oso Unbundles Security Authorization

Authorization is a hard problem that generally requires custom code. Oso wants to make it as simple as Stripe for payments or Twilio for communications.
Oct 6th, 2021 3:00am by Susan Hall
👁 Featued image for: Oso Unbundles Security Authorization

Just a few years ago, it seemed no one was talking about authorization, but now everybody is, which Graham Neray, co-founder and CEO of Oso, thinks is a healthy thing.

AirbnbCartaSlack, and Intuit have all written about how they customized authorization at their companies. And startups including Authzed and Aserto are diving into the authorization space, Authzed having just released an open source version of Google’s Zanzibar called SpiceDB. It’s a rival to the open source Keto, also based on Zanzibar. Oso has its own take on the problem.

Neray considers authorization the next part of the application to be unbundled in the vein of what Stripe did for payment processing and Twilio did for communications. It’s an essential component of every application and developers spend huge amounts of time writing code for it, yet it’s not a central part of the value proposition.

Authentication differs from authorization, as Mary Branscombe’s recent article pointed out: Authentication involving verifying that the person actually is who they purport to be, while authorization refers to what a person or service is allowed to do once inside the system.

Yet, despite the ever-growing need for authorization across systems, especially in a microservice world, it’s a hard problem to solve in a generic way across use cases, Oso co-founder and chief technology officer Sam Scott explains in a blog post.

There’s a broad spectrum of authorization use cases: Kubernetes admission control, database access control, microservice/application authorization, etc.,” Hacker News commenter thinrich pointed out. “Despite them all being authorization, they each have their own requirements around enforcement points, data dependencies, modeling/expressiveness, performance, etc. So it’s not surprising that with such a broad space of requirements we end up with such an interesting and rich landscape of technology choices.”

A Clean Slate

Neray previously worked at MongoDB; Scott has a background in cryptography. They share a vision of putting security tools in the hands of developers, Neray said. While working together on security tools for infrastructure, people kept asking about building application authorization, and they turned their focus there, creating the company Oso in 2018 and open sourced the technology in July last year.

“As an industry, we all started with a lot of these API as a service — AWS, Stripe, Twilio, whatever — things with pieces of the app that were easiest to separate out, because they already existed in these clearly identifiable components already, like compute or storage,” Neray said. “And authorization, which, you know, controls what you can do once you’re inside an application — what data you can see or what pages you can open — that is a hard thing to split out. And this is why people were asking us so much about it, and they had so many complicated questions. But it’s in every application … and it’s actually a really hard problem to get right.”

In the blog post, Scott takes issue with other authorization tools, including Zanzibar, listing among the problems that as data filtering grows more complex it requires a framework-level integration, which most don’t provide.

“One of the things that I think makes us uniquely positioned is that most competitors out there are starting from some pre-existing idea or product and building on top of it. And … it wouldn’t surprise me if they view that as a way to get faster time to market. But each of those prior technologies [that] could be usable for application authorization has non-trivial shortcomings that each of those vendors is now stuck with. We built from a clean slate. We actually explored a lot of those different design options with our earliest users to see what we thought made the most sense, and I think the product is better for it,” Neray said.

Oso operates from a core developed in Rust. It offers libraries in Node.js, Python, Go, Rust, Ruby and Java. Oso provides a mental model and an authorization system — a set of APIs built on top of a declarative policy language called Polar, plus a debugger and REPL — to define permissions in your application.

It provides three things for developers, according to Neray:

  • A framework with best practices built-in that enables them to build something fast and easily. Early on, he said, it’s not necessary to learn the inner workings of Polar, a language they build expressly for authorization, but developers can dive more deeply into it as things get more complex.
  • What they call a “forever” system that users will not outgrow. It supports any model and can be easily customized.
  • The ability to sleep easy, knowing Oso supports testing, is secure and provides plenty of documentation to ensure they’re getting it right.

Its GitHub page asserts that “developers can typically write a working Oso policy in less than five minutes, add Oso to an app in less than 30 minutes, and use Oso to solve real authorization problems within a few hours.”

It released Oso 0.20 in September including:

  1. Authorization modeling — built-in primitives that push best practices deeper into the product, so it effectively tells users how to model common patterns like role- and relationship-based access control (RBAC and ReBAC).
  2. Data filtering providing the ability to beyond yes/no questions to questions like “Show me only the rows that Juno can see.” Previously only available in Python, this version adds Node.js and Ruby as well. It’s still working on supporting this feature in Go, Java, and Rust.
  3. APIs that help developers know which layers in the stack they need to add authorization in their apps. Oso 0.20 provides native APIs for enforcing authorization at these different layers.

Users include Intercom, First Resonance, Wayfair and BioDati.

Focus on Documentation

“I’ve used Oso at Visa and it was a fascinating product. Until it clicked, Polar was super confusing, but after speaking to the team over Slack. I realized how easy it was to use,” a Hacker News commenter called stonecharioteer, actually Vinay Keerthi, wrote.

The company also is focused on providing documentation to help developers understand authorization. That need was one of the recurring topics among commenters on the Hacker News post. To that end, it has created the Authorization Academy, a series of technical guides for building application authorization.

Citing the dearth of deep, relevant content on the topic, Neray said:

“It’s crazy. It’s like you either end up on these very heavily, SEO and vendor buzzword pages, or these academic PDF-style pages. That’s part of what we’re out to change, just make the whole thing a bit more accessible for everyone.”

So far, the company has been focused on building adoption for the open source version, but will build a commercial product in the future.

TRENDING STORIES
Susan Hall is the Sponsor Editor for The New Stack. Her job is to help sponsors attain the widest readership possible for their contributed content. She has written for The New Stack since its early days, as well as sites...
Read more from Susan Hall
SHARE THIS STORY
TRENDING STORIES
SHARE THIS STORY
TRENDING STORIES
TNS DAILY NEWSLETTER Receive a free roundup of the most recent TNS articles in your inbox each day.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.