Title: I’m Rishabh and the co-founder and CTO at <a href="https:&#x2F;&#x2F;supertokens.com" rel="nofollow">https:&#x2F;&#x2F;supertokens.com</a> (YC S20). We offer open-source user authentication and we just released our user roles product for companies implementing authorization.<p>Our users are web developers, and a prominent and adjacent pain point for our users is authorization. Developers typically implement two independent solutions for authentication and authorization. Offering AuthN and AuthZ in a single solution is something we’ve been thinking about for the last few years.<p>Quick primer, authentication is knowing who the user is, and authorization is knowing what the user has access to. A physical analogy: A person enters a building. Authentication means reading their ID card and knowing that the person’s name is John. Authorization means knowing which floors, offices, and files John has access to.<p>With increasing privacy and data complexity, companies like Netflix[1], Slack[2], and Airbnb[3] have built out their own complex authorization systems.<p>To build our user roles product, we started with a first principles approach of covering authorization use cases using scripting languages such as XACML and OPA. But looking at existing solutions built by talented teams like Oso[4], Aserto[5], Cerbos[6], Strya[7], we realized that while these were powerful solutions, they were often overkill for most early to mid-stage companies (especially on the B2C side).<p>We went back to the drawing board, reached out to our users and after dozens of conversations, we realized that most authorization needs require the ability to<p>1. Assign and manage roles and permissions<p>2. Store roles in the DB and session tokens to make it readable on the frontend and<p>3. Protect APIs and websites based on these roles and permissions.<p>And so, we built user roles – a simple RBAC authorization service that focuses on the balance between simplicity and utility. It doesn’t cover many complex cases and we’re not looking to displace any of the authorization incumbents. But you can add AuthN and AuthZ using a single solution, quickly.<p>In the near future, we’ll be launching an admin GUI where you can manage your users and their roles with a few clicks.<p>We’d love for you to try it out and hear what additional functionality you’d like to see. What are your favorite authentication providers and what do they get right?<p>- [1]: <a href="https:&#x2F;&#x2F;conferences.oreilly.com&#x2F;velocity&#x2F;vl-ca-2018&#x2F;cdn.oreillystatic.com&#x2F;en&#x2F;assets&#x2F;1&#x2F;event&#x2F;270&#x2F;The%20distributed%20authorization%20system_%20A%20Netflix%20case%20study%20Presentation.pdf" rel="nofollow">https:&#x2F;&#x2F;conferences.oreilly.com&#x2F;velocity&#x2F;vl-ca-2018&#x2F;cdn.orei...</a><p>- [2]: <a href="https:&#x2F;&#x2F;slack.engineering&#x2F;role-management-at-slack&#x2F;" rel="nofollow">https:&#x2F;&#x2F;slack.engineering&#x2F;role-management-at-slack&#x2F;</a><p>- [3]: <a href="https:&#x2F;&#x2F;medium.com&#x2F;airbnb-engineering&#x2F;himeji-a-scalable-centralized-system-for-authorization-at-airbnb-341664924574" rel="nofollow">https:&#x2F;&#x2F;medium.com&#x2F;airbnb-engineering&#x2F;himeji-a-scalable-cent...</a><p>- [4]: <a href="https:&#x2F;&#x2F;www.osohq.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.osohq.com&#x2F;</a><p>- [5]: <a href="https:&#x2F;&#x2F;www.aserto.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.aserto.com&#x2F;</a><p>- [6]: <a href="https:&#x2F;&#x2F;cerbos.dev&#x2F;" rel="nofollow">https:&#x2F;&#x2F;cerbos.dev&#x2F;</a><p>- [7]: <a href="https:&#x2F;&#x2F;www.styra.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.styra.com&#x2F;</a>
Upvote: