If…, then how…
If a contractor's engagement ends without HR knowing, then how do we catch it?
Add to board memoOpen the memo
The short answer
- Recommendation
- Design it so HR never needs to know. Record every contractor in a sponsor register, with a sponsor and an end date, before any account exists, and set every account to expire at the end of that date. A monthly reconciliation catches anything that slips through.
- Reasoning
- Contractors and agency workers are the people most often missing from HR, so the sponsor register is the only source for their lifecycle. An end date recorded at joining ends the access whether or not anyone is told. It cannot catch work that stops early, so the sponsor, who knows, records an early end the day it happens. The monthly reconciliation is the backstop: an account that matches nobody in the HR record or the sponsor register is orphaned and disabled.
- Considerations
- The 12-month limit on an end date and the reminder 10 working days before it (JML-10), and disabling an orphaned account within 1 working day, are the CISO Times packs' defaults. Your own standard may set others.
- Only the sponsor can extend an end date. Extending it does not extend non-standard access: each extra right is renewed on its own request, with an expiry no later than the new end date.
- A configured end date is not evidence that access stopped. Confirm each removal in the system, local accounts included, and treat a system you cannot confirm as still active.
- An account used after the work ended goes through your incident route. Export its sign-in log and keep the account unchanged first.
The decision, step by step
Select any step for the reasoning behind it and where the pack covers it.
- Start
- Step
- Decision
- Outcome
Keyboard: Tab to a step, arrow keys move along the flow, Enter pins its explanation, + and − zoom, 0 fits the diagram, Esc closes. The text version below has the same content.
Where a step quotes a number, it is the default in the CISO Times pack. Your own standard may set a different one.
Read as text
The same flow written out: each step, its reasoning and where the pack covers it. 18 steps.
Start
A contractor's work may have ended unnoticed
Contractors and agency workers are the people most often missing from HR, which is why the sponsor register, not the HR record, is the only source for their lifecycle events. In the pack's example a contractor's project ended without anyone telling HR or the service desk, and it did not matter: the end date recorded at joining ended the access.
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureNon-employee end date
- P13-A02 Access Control PolicyThe identity lifecycle
Decision
Is the contractor in the sponsor register with an end date?
Every non-employee has a sponsor and an end date, recorded before any account is created and no more than 12 months after the start by the pack's default. A contractor whose account was created on a manager's request, with no register entry, has no end date to expire it. If you cannot find the entry, take the no branch.
- No, or not known: Treat the account as orphaned and disable it
- Yes: Has the recorded end date already passed?
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureJoiner (non-employee) (rule JML-10)
- P13-A02 Access Control PolicyWhat this policy rules out
Step
Treat the account as orphaned and disable it
An account that matches no current person in the HR record or the sponsor register is orphaned. Disable it within 1 working day of finding it by the pack's default, and ask the system owner to name an owner or confirm deletion. If the person is still working for you, their sponsor records them, with an end date, before access is restored.
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureMonthly reconciliation (rule JML-15)
- P13-A02 Access Control PolicyIdentity and where every change starts (rule JML-01)
Outcome
Raise it as a finding; a pattern is a process weakness
Raise the orphaned account with the access review coordinator as a finding. An account created with no register entry means the joiner route was bypassed; if it has happened more than once, send it to the process owner as a process weakness with a fix and a date.
In the pack
- P13-A09 Leaver Timeliness & Orphaned Account ReportOrphaned Accounts
- P07-A02 Access Review MethodologyFindings and process weaknesses (rules AR-08, AR-11)
Decision
Has the recorded end date already passed?
At the end of the recorded end date every account set to expire stops working, whether or not anyone told HR. Local accounts in systems that cannot expire accounts are removed from the leaver checklist at the same time.
- Yes: Check each account expired, local accounts included
- No, it is still ahead: Has the work stopped before the recorded end date?
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureNon-employee end date
- P13-A03 Joiner-Mover-Leaver Operating ProcedureThe lifecycle events
Decision
Has the work stopped before the recorded end date?
This is the case the end date cannot catch on its own: the work stops early and the accounts stay live until the date arrives. The sponsor is the person who knows, and the reminder before the end date is the routine moment to ask. The periodic access review is a later backstop: it raises an account with no sign-in for 90 days, by its default, as dormant. If the sponsor cannot say whether the work continues, treat it as stopped.
- Yes, or the sponsor cannot say: The sponsor records the early end; it is a leaver today
- No, the work continues: Does the sponsor want to extend the end date?
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureNon-employee end date
- P07-A02 Access Review MethodologyFindings and process weaknesses (rule AR-08)
Decision
Does the sponsor want to extend the end date?
The service desk reminds the sponsor 10 working days before the end date by the pack's default. The sponsor decides: let the engagement end, or extend it. Only the sponsor can extend it.
- Yes: The sponsor records a new end date; renew extras separately
- No: Let the accounts expire at the end date
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureNon-employee end date (rule JML-10)
- P13-A02 Access Control PolicyTiming at a glance
Step
The sponsor records a new end date; renew extras separately
The sponsor records the new end date in the sponsor register, no more than 12 months ahead. Extending the end date does not extend non-standard access: each extra right still needed is renewed on its own request, with the same approvals and an expiry no later than the new end date. Update each account's expiry to match.
In the pack
- P13-A05 Access Request & Approval FormRenewals, extensions and removal at expiry
- P13-A03 Joiner-Mover-Leaver Operating ProcedureNon-employee end date
Outcome
Let the accounts expire at the end date
Nothing more is needed while the work continues: the accounts expire at the end of the recorded end date. Non-standard rights end sooner if their own expiry comes first. The month-end reconciliation confirms that expired accounts are gone.
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureNon-employee end date
- P13-A05 Access Request & Approval FormApproval authority (rule JML-04)
Step
The sponsor records the early end; it is a leaver today
The sponsor records the new end in the sponsor register the day the work ends, and the person is a leaver that day. The service desk opens the leaver checklist, with a line for every system the person's access reaches. Recover equipment and badges the same day.
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureNon-employee end date
- P13-A03 Joiner-Mover-Leaver Operating ProcedureLeaver
Step
Check each account expired, local accounts included
Check the directory and every system with local accounts, from its own user list or audit log. A configured end date is not evidence that access stopped, and a system that cannot expire accounts depends on its named administrator removing them from the leaver checklist.
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureJoiner (non-employee)
- P13-A06 Leaver Access Removal ChecklistRemoval checks
Decision
Is any account still active in any system?
A removal counts only when it is confirmed in the system. If you cannot confirm a system's state, because its extract did not arrive or nobody can check, treat its accounts as still active.
- Yes, or not confirmed: Remove it now and record the removal as late
- No: Did they hold privileged access or know shared credentials?
In the pack
- P13-A02 Access Control PolicyRecords and the monthly check (rule JML-14)
- P13-A03 Joiner-Mover-Leaver Operating ProcedureEscalation
Step
Remove it now and record the removal as late
Call the named administrator, then the system owner, and block sign-in at the gateway where the account cannot be removed. A removal after the end date is late: raise it with the access review as a finding. Where a supplier runs the system and cannot remove it in time, the system owner raises the removal time against the contract.
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureEscalation
- P13-A03 Joiner-Mover-Leaver Operating ProcedureMonthly reconciliation
Decision
Did they hold privileged access or know shared credentials?
A supplier's engineer may hold a named supplier administrator account, enabled only for agreed windows, and a contractor may have been given administrator rights for a project. Check the privileged account inventory and the vault's access log for this person. If you cannot tell, take the yes branch.
- Yes, or not known: Disable privileged accounts; change what they could read
- No: Was any account used after the work ended?
In the pack
- P14-A03 Privileged Access Request, Elevation & Revocation ProcedureLeavers, movers and suppliers
- P14-A04 Privileged & Service Account InventoryAccount types
Step
Disable privileged accounts; change what they could read
Disable every privileged account the person holds, end its sessions and revoke its tokens. A supplier's engineer is disabled the same day the supplier tells you, and the supplier must tell you within 1 working day by the pack's default. Change every shared, service and break-glass credential the person could read within 1 working day.
In the pack
- P14-A03 Privileged Access Request, Elevation & Revocation ProcedureLeavers, movers and suppliers (rules RV-4, RV-5)
- P14-A02 Privileged Access StandardPeople and suppliers (rule PA-14)
Decision
Was any account used after the work ended?
Look at each system's sign-in log for the period between the end of the work and the removal. In the pack's example the log of a warehouse account removed late showed no sign-in after the last working day. If the logs do not cover the period, you cannot rule use out.
- Yes, or not known: Report it as a possible security incident
- No: Record the removal times; the month end checks again
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureLeaver
- P13-A03 Joiner-Mover-Leaver Operating ProcedureRelated documents
Outcome
Report it as a possible security incident
An account used after its owner left is reported through your incident route. Keep the account and its logs unchanged, and export the sign-in log before anything else is done to the account.
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureRelated documents
- P09-A05 Incident Triage & First-Hour Assessment ProcedureEvidence to preserve in the first hour
Outcome
Record the removal times; the month end checks again
Record each removal time on the leaver checklist and in the provisioning log. At the month end the reconciliation compares every non-employee's accounts with the sponsor register and lists any that survived, and a repeated cause goes to the process owner as a process weakness.
In the pack
- P13-A03 Joiner-Mover-Leaver Operating ProcedureMonthly reconciliation
- P13-A09 Leaver Timeliness & Orphaned Account ReportLeavers
Practical checklist
- Record each contractor in the sponsor register, with a sponsor and an end date, before any account is created.
- Set every account to expire at the end of the end date, and put the date on the leaver checklist for systems that cannot expire accounts.
- Remind the sponsor 10 working days before the end date, and have them let it end or record a new end date.
- When work stops early, have the sponsor record the new end that day, and run the leaver checklist.
- Confirm each account has gone in every system. Remove any still active at once, and record the removal as late.
- Disable any privileged accounts, and change shared, service and break-glass credentials the person could read within 1 working day.
- Check sign-in logs for use after the work ended. Report any use, or a period the logs do not cover, as a possible incident.
- Reconcile every system's accounts with the HR record and the sponsor register each month, and raise orphaned accounts as findings.
Evidence to have ready
- The sponsor register entry for each contractor: sponsor, reason, start and end date, recorded before the account was created.
- Each account's configured expiry, or the end date on the leaver checklist for systems that cannot expire accounts.
- The leaver checklist and provisioning log, with each removal time confirmed in the system.
- The monthly reconciliation report, with each orphaned account, when it was disabled and the finding raised.
- For privileged access, when it was removed and the date each shared credential the person could read was changed.
Assumptions
- You keep a sponsor register for contractors, agency workers and suppliers' staff, and every one has a sponsor who answers for their access.
- Accounts can be set to expire automatically at a date, at least in the directory, and you can extract the accounts from every in-scope system each month.
- The 12-month limit, the 10-working-day reminder and the 1-working-day limits are the CISO Times packs' defaults. Your own standard may set others.
Not covered here
- An employee leaving, including on bad terms. That is “When must a leaver's access be removed, and what changes if they leave on bad terms?”.
- Finding services whose accounts sit outside single sign-on. That is “If some SaaS accounts sit outside SSO, then how do we find and close the gaps?”.
- Ending the contract with the contractor's firm and recovering data. That is “How do we exit a supplier without losing data or access control?”.
- Leavers a periodic access review finds still holding access. That is “If the review finds leavers who still have access, then what?”.
Related questions
- When must a leaver's access be removed, and what changes if they leave on bad terms?
- If some SaaS accounts sit outside SSO, then how do we find and close the gaps?
- If the review finds leavers who still have access, then what?
- How do we set up a new starter's access before their first day?
- How do we exit a supplier without losing data or access control?