The Bike Shed

447: How to (not) implement impersonation


Listen Later

For developers, impersonation can be a powerful tool, but with great power comes great responsibility. In today’s episode, hosts Stephanie and Joël explore the complexities of implementing impersonation features in software development, giving you the ability to take over someone’s account and act as the user. They delve into the pros and cons of impersonation, from how it can help with debugging and customer support to its prime drawbacks regarding security and auditing issues. Discover why the need for impersonation is often a sign of poor admin tooling, alternative solutions to true impersonation, and the scenarios where impersonation might be the most pragmatic approach. You’ll also learn why they advocate for understanding the root problem and considering alternative solutions before implementing impersonation. Tune in today for a deep dive into impersonation and the best ways to use it (or not use it)!


Key Points From This Episode:

What’s new in Stephanie’s world: how Notion Calendar is helping her manage her schedule.

Joël’s quest to find a health plan: how he used a spreadsheet to compare his options.
A client request to build an impersonation feature, and why Joël has mixed feelings about it.
What an impersonation tool does: it allows you to take over someone’s account.
When it’s useful to use implementation as a feature, like for debugging and support.
Potential risks and responsibilities associated with impersonation.
Why the need for impersonation often indicates poor admin tooling.
Technical and security implications of impersonation.
Solutions for logging the audit trail when you’re doing impersonation.
Differentiating between the logged-in user and the user you’re rendering views for.
Building an app that isn’t as tightly coupled to the “current user.”
Suggested alternatives to true impersonation.
The value of cross-functional teams and collaborative problem-solving.

Links Mentioned in Today’s Episode:

Mailtrap
Notion Calendar
'Implementing Impersonation'
Sustainable Web Development with Ruby on Rails
The Bike Shed
Joël Quenneville on LinkedIn
Joël Quenneville on X
Support The Bike Shed
WorkOS

Support The Bike Shed

...more
View all episodesView all episodes
Download on the App Store

The Bike ShedBy thoughtbot

  • 4.9
  • 4.9
  • 4.9
  • 4.9
  • 4.9

4.9

121 ratings


More shows like The Bike Shed

View all
Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

Software Engineering Radio - the podcast for professional software developers

262 Listeners

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

285 Listeners

Startups For the Rest of Us by Rob Walling

Startups For the Rest of Us

694 Listeners

Giant Robots Smashing Into Other Giant Robots by thoughtbot

Giant Robots Smashing Into Other Giant Robots

89 Listeners

Build Phase by thoughtbot

Build Phase

45 Listeners

The Ruby on Rails Podcast by Elise Shaffer

The Ruby on Rails Podcast

53 Listeners

Thoughtworks Technology Podcast by Thoughtworks

Thoughtworks Technology Podcast

43 Listeners

Reboot by thoughtbot

Reboot

12 Listeners

Tentative by thoughtbot

Tentative

9 Listeners

Software Engineering Daily by Software Engineering Daily

Software Engineering Daily

630 Listeners

Soft Skills Engineering by Jamison Dance and Dave Smith

Soft Skills Engineering

271 Listeners

Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

Syntax - Tasty Web Development Treats

984 Listeners

REWORK by 37signals

REWORK

212 Listeners

Crossroads by thoughtbot

Crossroads

2 Listeners

CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

CoRecursive: Coding Stories

185 Listeners

Remote Ruby by Chris Oliver, Andrew Mason

Remote Ruby

34 Listeners

Practical AI by Practical AI LLC

Practical AI

196 Listeners

Code and the Coding Coders who Code it by Drew Bragg

Code and the Coding Coders who Code it

6 Listeners

IndieRails by Jess Brown & Jeremy Smith

IndieRails

5 Listeners