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)

Performance & Scalability (1/N): Similarities & Differences

Performance & Scalability (1/N): Similarities & Differences

(Part 1) Let's talk a little bit about the similarities and differences between these 2 two terms that are sometimes (or, often?) misunderstood.

15 Helmi 20217min

Building User Interfaces when dependent APIs are not ready

Building User Interfaces when dependent APIs are not ready

It would be ideal if all the APIs were implemented before we starting building user interfaces but that's not always possible, and it is hardly ever the case. Given that, how should we go about building the UI?

12 Helmi 20215min

Options available and picking the right Heroku Dyno for your application

Options available and picking the right Heroku Dyno for your application

Heroku offers quite a few options. Here's how you can go about picking one that works for you.

24 Tammi 20215min

Heroku Deployments to Production & Lower Environments

Heroku Deployments to Production & Lower Environments

You've built your app and think you are good to go. But there's one more step. Deployment!

24 Tammi 20214min

Scenario: Coding Challenge to be completed in 90 minutes.What are some of the strategies?

Scenario: Coding Challenge to be completed in 90 minutes.What are some of the strategies?

It is quite natural to feel overwhelmed when someone gives you 90 minutes and a long list of requirements. Here are some strategies that might help you be successful.

23 Tammi 20219min

How best to prepare for Technical Interviews

How best to prepare for Technical Interviews

I've been on all sides of technical interviews for years, and I figured it wouldn't hurt to share my thoughts on them!   And don't forget to prepare for your next interview in a more structured manner. Do it on https://snowpal.com!

22 Tammi 20219min

Do not over-Design. While a design is imperative, how much of it is needed is completely up to you.

Do not over-Design. While a design is imperative, how much of it is needed is completely up to you.

It’s sometimes compelling to try and get every question answered before you start working on coding a feature (regardless of which part of the stack it belongs to). But it may or may not be a good idea. Find the right balance. Here’s how we do it.

20 Tammi 20213min

How to set up Campaigns in Facebook, Pinterest, App Store, etc.

How to set up Campaigns in Facebook, Pinterest, App Store, etc.

Well, there's a lot to learn here, and I've hardly scratched the surface. But my hope is that it at least gives you a starting point.

19 Tammi 20219min