identity-lifecycle-administration
Executes joiner, mover and leaver processes — provisioning, group membership, access changes on role change, and complete deprovisioning. Use this to set up or fix joiner-mover-leaver, deprovision someone completely, clean up accumulated access, audit group membership, or find ac
Install
npx skills add https://github.com/cbrock84/headcount/tree/main/plugins/it-operations/skills/identity-lifecycle-administration
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install cbrock84-headcount@llmmart
git clone https://github.com/cbrock84/headcount.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole cbrock84/headcount collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
Identity lifecycle administration
This is execution: creating, changing and removing access as people arrive, move and leave.
Policy — what a role should be entitled to, and least privilege — belongs to
security:access-and-identity. This skill runs the process that policy defines, and the gap
between the two is where most access problems live.
Joiners
Provision from the role, not by copying a colleague. Copying is the single largest source of privilege accumulation: it inherits everything that person collected, including access they should not have had, and it propagates that indefinitely.
Define role-based bundles for the common cases so a standard joiner is one action, and treat anything outside them as an exception requiring approval. Exceptions are fine; unrecorded exceptions are not.
Time provisioning to be complete before the start date — coordinated through
people:onboarding-and-offboarding.
Movers are the neglected case
Leavers get attention because someone is going. Movers do not, and so access accrues: the person who has worked in three departments has permissions from all three, and nobody ever removed the first two.
Treat a role change as a revoke and re-provision, not an addition. This is the single highest- value fix available in most organizations, and it is almost always skipped because the person is still present and nothing appears broken.
Leavers, completely
Disable promptly at the agreed time, then work a checklist that reaches past the directory: systems outside single sign-on, local accounts, shared credentials the person knew, API keys and tokens they created, external services procured on a personal login, and any mail or calendar delegation.
The gap is almost always the systems identity management does not reach. Maintain the list of them explicitly rather than discovering it during an audit.
Preserve rather than delete where there is any prospect of investigation or legal hold — deletion is irreversible and occasionally very expensive.
Recertify, and act on it
Periodically, system owners confirm who should still have access. This is worth doing only if non-response defaults to removal; where non-response means retain, recertification becomes a formality that certifies whatever exists.
Hunt specifically for orphaned accounts — accounts with no owner, service accounts nobody claims, and credentials that have not been used in months but still work.
Sources
references/sources.md in this skill lists the outside authorities that settle the questions
here — what each one is authoritative for, and what you may do with it. Check them before
answering on anything they cover, and cite what you used. Most are free to read and not free
to reproduce; the use note on each is binding.
Tooling
Directory and SSO: Microsoft Entra ID, Okta, Google Workspace, JumpCloud, and similar.
HRIS as the trigger: Workday, BambooHR, Rippling, HiBob, Gusto, ADP, and similar. Identity should follow the HRIS record rather than a separate list of who works here.
Provisioning runs on SCIM wherever the application supports it. Where it does not, the joiner-mover-leaver steps are manual and belong in a ticket template, not in someone's head.
Never
- Provision by copying an existing user.
- Add access on a role change without removing the old.
- Consider a leaver deprovisioned when the directory account is disabled.
- Run recertification where non-response means retain.
Files (headcount)
-
references
-
sources.md 2.4 KB
# Sources — `it-operations:identity-lifecycle-administration` <!-- Generated by scripts/build-sources.py from sources/*.toml. Do not edit. --> Check these before answering on anything they cover, and cite what you used. The use note on each one is binding: most of what a professional cites is free to read and not free to reproduce. ## NIST SP 800-207: Zero Trust Architecture NIST · US · public domain (US government) — quote freely <https://csrc.nist.gov/pubs/sp/800/207/final> **Authoritative for:** What zero trust denotes — the policy engine, administrator and enforcement point model, and the tenets — so that a vendor cannot redefine the term mid-conversation. ## NIST SP 800-63: Digital Identity Guidelines NIST · US · public domain (US government) — quote freely <https://csrc.nist.gov/pubs/sp/800/63/4/final> Machine-readable: <https://pages.nist.gov/800-63-4/> **Authoritative for:** What each identity, authenticator and federation assurance level requires — and, notably, that forced periodic password rotation and composition rules are not among them. ## OpenID Connect Core 1.0 OpenID Foundation · global · **read and cite only — copyrighted, do not reproduce** <https://openid.net/specs/openid-connect-core-1_0.html> **Authoritative for:** What an ID token is, which claims are standard, and what a conformant party must do in each flow. Settles arguments that begin 'our provider does it differently'. ## RFC 7644: System for Cross-domain Identity Management Protocol IETF · global · **read and cite only — copyrighted, do not reproduce** <https://www.rfc-editor.org/rfc/rfc7644.html> Machine-readable: <https://www.rfc-editor.org/rfc/rfc7643.html> **Authoritative for:** How provisioning and deprovisioning are transacted between an identity provider and a downstream application — endpoints, patch semantics, filtering, and the canonical user and group attributes. ## RFC 9700: Best Current Practice for OAuth 2.0 Security IETF · global · **read and cite only — copyrighted, do not reproduce** <https://www.rfc-editor.org/rfc/rfc9700.html> **Authoritative for:** Which OAuth 2.0 patterns remain permitted — that the implicit grant and password grant must not be used, that PKCE is required, and that redirect URIs must match exactly. --- Sources are maintained in `sources/` upstream, not here. If one is wrong, out of date, or missing, fix it there — this file is regenerated and an edit to it is lost.
-
-
SKILL.md 3.8 KB
--- name: identity-lifecycle-administration description: Executes joiner, mover and leaver processes — provisioning, group membership, access changes on role change, and complete deprovisioning. Use this to set up or fix joiner-mover-leaver, deprovision someone completely, clean up accumulated access, audit group membership, or find accounts that outlived their owners. --- # Identity lifecycle administration This is execution: creating, changing and removing access as people arrive, move and leave. **Policy — what a role should be entitled to, and least privilege — belongs to `security:access-and-identity`.** This skill runs the process that policy defines, and the gap between the two is where most access problems live. ## Joiners Provision from the role, not by copying a colleague. Copying is the single largest source of privilege accumulation: it inherits everything that person collected, including access they should not have had, and it propagates that indefinitely. Define role-based bundles for the common cases so a standard joiner is one action, and treat anything outside them as an exception requiring approval. Exceptions are fine; unrecorded exceptions are not. Time provisioning to be complete before the start date — coordinated through `people:onboarding-and-offboarding`. ## Movers are the neglected case Leavers get attention because someone is going. Movers do not, and so access accrues: the person who has worked in three departments has permissions from all three, and nobody ever removed the first two. Treat a role change as a **revoke and re-provision**, not an addition. This is the single highest- value fix available in most organizations, and it is almost always skipped because the person is still present and nothing appears broken. ## Leavers, completely Disable promptly at the agreed time, then work a checklist that reaches past the directory: systems outside single sign-on, local accounts, shared credentials the person knew, API keys and tokens they created, external services procured on a personal login, and any mail or calendar delegation. The gap is almost always the systems identity management does not reach. Maintain the list of them explicitly rather than discovering it during an audit. Preserve rather than delete where there is any prospect of investigation or legal hold — deletion is irreversible and occasionally very expensive. ## Recertify, and act on it Periodically, system owners confirm who should still have access. This is worth doing only if non-response defaults to removal; where non-response means retain, recertification becomes a formality that certifies whatever exists. Hunt specifically for orphaned accounts — accounts with no owner, service accounts nobody claims, and credentials that have not been used in months but still work. ## Sources `references/sources.md` in this skill lists the outside authorities that settle the questions here — what each one is authoritative for, and what you may do with it. Check them before answering on anything they cover, and cite what you used. Most are free to read and not free to reproduce; the use note on each is binding. ## Tooling Directory and SSO: Microsoft Entra ID, Okta, Google Workspace, JumpCloud, and similar. HRIS as the trigger: Workday, BambooHR, Rippling, HiBob, Gusto, ADP, and similar. Identity should follow the HRIS record rather than a separate list of who works here. Provisioning runs on SCIM wherever the application supports it. Where it does not, the joiner-mover-leaver steps are manual and belong in a ticket template, not in someone's head. ## Never - Provision by copying an existing user. - Add access on a role change without removing the old. - Consider a leaver deprovisioned when the directory account is disabled. - Run recertification where non-response means retain.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.