Authorization as a Service (feat. Jake Moshenko)

Authorization as a Service (feat. Jake Moshenko)

Jake Moshenko⁠, CEO of ⁠AuthZed⁠, discusses the importance of permissioning databases and the challenges of implementing permissions at scale. He explains how AuthZed solves this problem by providing a common API for flexible and fine-grained authorization. The target market for AuthZed includes companies of all sizes that need to add complex permission workflows to their applications. Jake demonstrates how AuthZed can be integrated with backend systems, web applications, and mobile apps. He also explains the benefits of using AuthZed, such as increased security and improved product velocity. The conversation concludes with a discussion on the AuthZed schema language and how permissions and roles are defined in the system. Jake Moshenko introduces the concept of permissions and relations in the context of access control. He explains how permissions can be granted to users for specific actions on resources, and how relationships between users and objects are defined. Jake also discusses the flexibility of defining roles and the granularity of permissions. He demonstrates how permissions can be visualized and edited in a user interface, and highlights the benefits of using a startup solution for access control. The conversation concludes with a discussion on the importance of leveraging existing tools and trusting innovative startups.

Takeaways

  • Permissions can be granted to users for specific actions on resources, such as read, write, and admin privileges.
  • Relations define the relationships between users and objects, allowing users to be readers, writers, or admins of a particular object.
  • Roles can be used to group multiple privileges or permissions together, providing a higher level of access.
  • Design time actions involve configuring the access control system, while runtime actions involve making API calls to enforce permissions.
  • When considering building or buying a solution, it is important to focus on core competencies and leverage existing tools and services.

Chapters

00:00 Introduction and Background

01:04 The Problem of Permissions at Scale

05:25 Implementing Authorization for Different Client Types

06:46 Integration with Backend and Web Applications

10:24 Implementing Permissioning for Mobile Apps

14:25 Benefits of Using AuthZed for Permissioning

22:00 Granting Access to Resources with AuthZed API

25:11 Defining Permissions and Roles in AuthZed

30:42 Introduction to Permissions and Relations

31:11 Understanding Permissions and Roles

32:20 Decoupling Relationships and Actions

33:36 Granularity of Permissions

34:14 Grouping Privileges into Roles

36:01 Design Time and Runtime Actions

36:46 Visualizing and Editing Permissions

39:33 Trusting a Startup

53:36 Building vs. Buying Solutions

58:36 The Value of Innovation and Trust

Jaksot(410)

Snowpal Pitch: GitHub Branch Management

Snowpal Pitch: GitHub Branch Management

There is no single answer to what branching strategies work for you when it comes to GitHub. We've tried more than a few ourselves but eventually arrived at one that works quite well for us.

28 Marras 20203min

Unit Testing vs Functional Testing vs Integration Testing: What are some differences?

Unit Testing vs Functional Testing vs Integration Testing: What are some differences?

While it's important to not be bogged down by terminologies, it is also imperative that there is consensus within any given team so there is no confusion.

28 Marras 20205min

TypeScript & ECMAScript6

TypeScript & ECMAScript6

It is hard to overstate the value strong typing brings to the table, especially in the context of teams that move real fast (and have fun doing so)!

22 Marras 20202min

SSL Connect Error: Upgrade to heroku-20

SSL Connect Error: Upgrade to heroku-20

If you upgraded to heroku-20, and ran into SSL errors, this quick video (less than 2 minutes is very, very quick for someone for who brevity ain't always a forte!) may help you. It took me 3 hours to figure this out, and if I can save you that time, it would be worth it, right!

20 Marras 20201min

Code Refactoring: Few things to consider

Code Refactoring: Few things to consider

Refactoring your code periodically is a good idea. But, when you do, exercise some caution.

17 Marras 202045s

(Part 2/2) Software Testing in a Startup

(Part 2/2) Software Testing in a Startup

If you are an ambitious startup (like us!) that tries to churn out a lot of new features on a weekly basis, you are always focused on the next cool thing to do. But, needless to mention, a stable platform in Production is imperative to building user trust. Here are some of the things we do to ensure uncompromising stability.

17 Marras 20203min

(Part 1/2) Software Testing in a Startup

(Part 1/2) Software Testing in a Startup

If you are an ambitious startup (like us!) that tries to churn out a lot of new features on a weekly basis, you are always focused on the next cool thing to do. But, needless to mention, a stable platform in Production is imperative to building user trust. Here are some of the things we do to ensure uncompromising stability.

10 Marras 20209min

Final Cut Pro X - Bugs, and Workarounds

Final Cut Pro X - Bugs, and Workarounds

Apple's Final Cut Pro X is a good piece of software for Video Editing but it isn't without its share of bugs. Here are some I've run into, and the workarounds I've resorted to.

25 Loka 20208min