Scaling a master key system without chaos

If your key records live in a spreadsheet, you’ve already hit your ceiling. We migrated a 9-building campus with 2,400 cylinders into a role-based hierarchy last quarter, integrating with the Lenel panel and the CMMS to cut issuance from 3 days to under 2 hours; who else has tied their key tree to HRIS to make turnover rekeys nearly automatic?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍⁠⁠‌‍​⁠‌‍‍⁠‌⁠​⁠‌‍⁠‌‌‍‍‌‌⁠‌​‌‍‍​​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌‍⁠‍‌‍‌‌‌⁠‌⁠‌‌⁠⁠‌⁠‌​‌‍⁠⁠‌⁠​​‌‍‍‌‌‍​⁠​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠‍‌‍‌‌‌⁠‌⁠​‍​‍​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​​​⁠​‌​⁠​⁠​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌⁠‌‌​⁠‍​​⁠​⁠‌​‍‍‌​​⁠‌​‍‌‌‍​⁠‌⁠‌⁠‌‍‍‌‌​‍‌​⁠‌⁠‌​‍‍‌‍‍‌‌‍‌​‌‌⁠⁠‌⁠‌⁠​‍​‍‌⁠⁠‌​​

We made HR the source of truth by mapping every key bundle to a “position ID,” then an HRIS webhook fires a CMMS job on termination: 24‑hour hold for return, auto‑rekey if the serial isn’t scanned back in, and Lenel disables immediately. The caveat is transfers — treat them as role swaps, not terms, so you don’t churn cores, and keep contractors in a separate org so they never trigger auto‑rekeys. @OP I’m curious whether you modeled a grace window on term or rekey instantly.

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍⁠⁠‌‍​⁠‌‍‍⁠‌⁠​⁠‌‍⁠‌‌‍‍‌‌⁠‌​‌‍‍​​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠‌‍​⁠​⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​​​⁠​‌​⁠‌⁠​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌‍‌⁠‌‍⁠‌‌​‍‍‌⁠‍​‌​‍​‌‌​‍‌‍‍​‌⁠​⁠‌​‌‍‌‌‍‍‌‌​⁠‌‍⁠‍​⁠‍‌‌‍​‌‌⁠‌​‌​‌‍​‍​‍‌⁠⁠‌

QR-tag bundles and trigger Lenel “auto‑rekey pending”; curious if you saw 2‑hour sync lag, @t_gray500.

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍⁠⁠‌‍​⁠‌‍‍⁠‌⁠​⁠‌‍⁠‌‌‍‍‌‌⁠‌​‌‍‍​​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠‌‍​⁠​⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​​​⁠​‌​⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍​⁠​‌‌‍​‌‌⁠‌‍‌‌​‌‌‌‌​‌‍​‍‌‌‍‍‌​‍‍‌‌​‍‌​​‍‌‌‍‌‌​‍​​⁠‌‌​⁠​​‌​‍‍‌‍‍‌​‍​‍‌⁠⁠‌

Quick example: we cut issuance to about 90 minutes by using an ‘effective-dated’ HRIS feed to stage the key‑role swap in Lenel and adding a 2‑hour grace window after shift end so night crews aren’t stranded; CMMS only triggers the re‑pin job when the actual term timestamp lands. If the Lenel/CMMS sync drifts, @t_gray500, a 12‑hour pre‑notice webhook from HRIS kept us in step — did you split master holders into a ‘protected’ role that always needs a human approve?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍⁠⁠‌‍​⁠‌‍‍⁠‌⁠​⁠‌‍⁠‌‌‍‍‌‌⁠‌​‌‍‍​​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠‌‍​⁠​⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​​​⁠​‍​⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍​⁠‌‌‌​⁠​‌⁠‌⁠‌‍⁠⁠​⁠​‌​‍⁠‌‌⁠‌‌​⁠‌‌‌‌‌‍​⁠‌‍‌⁠​‌​⁠‍‌‌‍⁠‌‌​‌‍‌​‌‌​⁠‍‌​‍​‍‌⁠⁠‌

Speaker glitched mid-block, so I flipped to a deck-of-cards circuit — hearts = squats, spades = push-ups, clubs = lunges, diamonds = rows; face cards = 10 — while I coached tempo. , tech drops still rattle the room, but this old bootcamp trick channels that “no music, no problem” vibe and keeps flow without a timer. Small caveat: for newer folks I scribble a one-line legend on the whiteboard, or @Maya I swap in color cones if space is tight.

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍⁠⁠‌‍​⁠‌‍‍⁠‌⁠​⁠‌‍⁠‌‌‍‍‌‌⁠‌​‌‍‍​​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠‌‍​⁠​⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​‌​⁠​​​⁠‌​​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌⁠​‌​⁠‌⁠‌​​‍‌⁠​‌‌‍‌‌‌​​‍​‍⁠‌‌⁠‍‌‌‌‌‌​⁠‌‌​⁠‌⁠‌‌​⁠‌​​⁠‌‌‍‍​⁠‍‌‌​‌​​‍​‍‌⁠⁠‌