C.W.K.
Stream
Lesson 06 of 06 · published

Trust Boundaries — Where the Threat Model Bites

~15 min · trust-boundaries, architecture, zones

Level 0Greenhorn
0 XP0/53 lessons0/14 achievements
0/100 XP to next level100 XP to go0% complete

A trust boundary is the line between two zones with different trust levels. Every authentication and authorization check exists to enforce one. Naming them explicitly is the fastest way to spot security holes.

The solo dev's five trust zones

ZoneWhat is insideTrust level
1. Your hardwareMac, phone, hardware keyHighest — if compromised, all bets are off
2. Your tailnetYour devices and servers reachable via TailscaleHigh — but lost phone = a stranger is in zone 2
3. Your authenticated sessionApp after PIN entryMedium — valid for 30 days, IP-bound, revocable
4. Your local LAN (home Wi-Fi)Devices on the same routerMixed — includes guests, IoT, your kid's tablet
5. The internetEveryone elseZero — hostile until proven otherwise

Where the boundaries live

  • Internet → tailnet — Tailscale's WireGuard handshake (Track 4).
  • Tailnet → session — The PIN layer (Track 5).
  • Session → admin — An additional check inside the PIN-authed session for sensitive routes (Track 8).
  • LAN → host — Local IP bypass: skip the PIN if the request comes from 127.0.0.1 or specific LAN IPs (a deliberate convenience trade).

External links

Exercise

Sketch your own setup as a 5-zone trust boundary diagram (paper is fine). For each route in one of your apps, label which zone it sits behind. Routes you can't easily place are routes that need a clearer boundary defined. Most surprising for solo devs: how many things sit at zone 4 (LAN trust) without realizing it.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.