~/talk

Guardrails: Keeping customer data separate in a multi tenant system

Talkat Rails World 2023 · 2023-10-05..10-06· [ruby-on-rails, security]
links:none on file
slides:none on file

Sets a per-request safe app thread-local and enforces it: an ActiveRecord init callback emits metrics then raises if model.app_id disagrees, cutting mis-scoped instantiations from about 12 billion/hour down to near zero; cache writes use MemCacheStore entry marshalling to embed and validate safe_app_id so cross-tenant cache reads raise exceptions; rollout takes hundreds of small PRs but cache changes ship in days, and payoffs include Honeycomb per-customer traces, automatic shard routing, and a per-customer kill switch.

AI-written summary · about

  1. 0:00Introduction
  2. 8:39The solution
  3. 10:36The solution in action
  4. 15:00What we learned
  5. 16:24Rails Cache
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.