Implementing Asset Management & Access Control
Build a real asset inventory and classification scheme, and design a working identity lifecycle (joiner-mover-leaver) with role-based access and a real access review cadence.
Learning Objectives
- → Design an asset classification scheme with a workable number of tiers
- → Describe the joiner-mover-leaver access lifecycle
- → Explain why role-based access control scales better than per-user permissioning
- → Set a defensible access review cadence and justify it
Foundation's Annex A lessons covered what asset management (5.9-5.14) and access control (5.15-5.18) require. This lesson is about actually building them — an inventory people keep updated, a classification scheme people can actually apply, and an access lifecycle that survives someone's first day and last day alike.
Asset inventory: keep the tiers workable
A classification scheme with too many levels becomes unusable — nobody consistently applies a 7-tier system correctly. Most organizations land on 3-4 workable tiers:
| Tier | Typical meaning | Example |
|---|---|---|
| Public | No harm if disclosed | Marketing website content |
| Internal | Minor harm if disclosed externally | Internal org charts, non-sensitive meeting notes |
| Confidential | Real harm if disclosed | Customer contracts, source code, financial reports |
| Restricted | Severe harm if disclosed | Customer PII, cryptographic keys, credentials |
The inventory itself doesn't need to be exotic tooling — a small organization can maintain a well-governed spreadsheet or a lightweight CMDB; what matters is that it's actually kept current (tied to an owner and review cycle, same discipline as the policy framework) and that every asset has a classification, not just the ones someone remembered to tag.
The joiner-mover-leaver lifecycle
Access control implementation is best designed around three life-cycle events, not as one-off rules:
JOINER → Provision access matching the role, no more.
Approval required before first access, not after.
MOVER → Access changes with role changes — old access
REMOVED, not just new access added. (The most
commonly skipped step — "access creep.")
LEAVER → Access revoked, ideally same-day, ideally
triggered automatically by an HR system event
rather than a manual step someone might forget.
(Foundation's 6.5 finding, revisited here as an
implementation problem, not just a concept.)
Access creep — accumulating permissions across role changes without ever losing old ones — is one of the most common real-world access control failures. Someone who moves from Support to Engineering to Team Lead over three years often ends up with all three roles' permissions stacked, because the "mover" step only ever added access and never reviewed what should be removed.
Why role-based access control (RBAC) scales
Assigning permissions per individual doesn't scale past a handful of people — every new hire requires someone to manually decide their exact permission set from scratch, and every audit requires manually verifying each person's permissions individually. Role-based access control assigns permissions to defined roles (e.g., "Support Agent," "Backend Engineer," "Finance Analyst") and assigns people to roles instead. This makes least privilege — giving only the access actually needed for the job — something you design once per role, rather than negotiate per person, and makes an access review a matter of checking "does this person's assigned role match their actual job?" rather than auditing dozens of individually-granted permissions from scratch.
Setting a real access review cadence
Foundation's SoA lesson emphasized that a control claim needs evidence — "we review access" is not evidence; a dated, completed review with a named reviewer is. A common, defensible cadence is quarterly for privileged/administrative access and semi-annual or annual for standard access, though the right cadence should be justified by the risk register (higher-risk systems reviewed more often), not picked arbitrarily. Whatever cadence is chosen, the review needs a clear, repeatable process: a list of current access is generated, a reviewer (ideally the resource/control owner, not IT alone) confirms each entry is still appropriate, and any flagged access is revoked with the action documented — closing the loop back to the risk register and, where relevant, the internal audit program covered later in this roadmap.
A mid-sized SaaS company wants to classify its information assets. Propose a 4-tier scheme (using the lesson's Public/Internal/Confidential/Restricted pattern or your own labels), and classify these 4 examples: (a) the public pricing page, (b) an internal engineering roadmap document, (c) a customer's payment card token, (d) the company's TLS private key.
Which tier should the company's TLS private key be classified as, and why?
An employee's access history shows: joined as Support Agent (support ticket system access), moved to Backend Engineer 8 months later (production database access added, support ticket access never removed), moved to Team Lead a year after that (admin panel access added, all previous access retained). Identify the specific mistake in this history, and what should have happened at each 'mover' event instead.
What specific mistake occurred at each 'mover' event in this employee's access history?
A company's risk register shows the production database (containing customer financial data) as a high-priority residual risk, while the internal wiki (low sensitivity, internal-only content) is a low-priority risk. Propose different access review cadences for each system, and justify the difference using the lesson's reasoning.
Why should the production database's access review cadence be more frequent than the internal wiki's?
💪 Exercises & Challenges
Asset Management & Access Control Implementation — MCQ
Asset Management & Access Control Implementation — MCQ
Design a Joiner-Mover-Leaver Process
Design a Joiner-Mover-Leaver Process
The Classification Mismatch
The Classification Mismatch