Design a data loss prevention system
Design DLP for 50,000 employees: detectors from regex with checksums to exact data match and ML classifiers, inspection at the endpoint, email gateway, SaaS APIs and network proxy, a latency budget per channel, false positives people will tolerate, and a system that does not become the biggest store of sensitive data in the company.
01Understand the problem
- Build detectors from regex plus checksum (Luhn), exact data match and ML classifiers, and know what each is good for
- Place inspection at the endpoint, email, SaaS API and network and choose inline or out-of-band per channel
- Trade latency against coverage and engineer false positives down
- Protect the privacy of inspected data so DLP is not itself the breach
What they probe: which detector catches which data, where you can block before loss and where you can only clean up, what an upload waits for, how you stop 'every order number is a card number', and who can read the evidence. Where candidates slip: regex only, one inspection point, blocking everything on day one, storing full matched content in incidents, forgetting that TLS and encrypted files hide content.
DLP watches data leaving where it should stay: an email with 5,000 card numbers to a personal address, a customer export uploaded to a personal cloud drive, source code pasted into a public chatbot. It has two halves: detection (is this content sensitive?) and enforcement at an inspection point (log, coach the user, block, quarantine, encrypt, revoke a share).
Functional requirements
- Detect card numbers (PANs), national IDs, credentials, customer records, source code and labelled documents in text and files (Office, PDF, archives, images through OCR).
- Inspect email, web uploads through a proxy, endpoint actions (USB, clipboard, print, browser upload) and sanctioned SaaS (file storage, chat).
- Actions per policy: log, coach with justification, block, quarantine, encrypt, revoke a share link.
- An incident workflow for analysts, with masked evidence and per-rule false positive metrics.
Non-functional requirements
- 50,000 users; about 2M emails and 10M web uploads per day.
- Added latency: email < 30 s, proxy upload p99 < 300 ms, endpoint clipboard and print < 50 ms.
- Each inline point has a defined behaviour when detection is down.
- Inspected content is never stored in full; evidence masked, access audited, EU staff data processed in the EU.
This is an advanced module
Design problems: data security is part of the Pro pass. 4 more sections — the deep dives, the final design, follow-ups and the test — unlock with it.
Already a cyart.io or studio.cyart.io member? Your pass code is in your Studio account.