Install
$ agentstack add skill-vinayaklatthe-microsoft-security-skills-entra-id-governance ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Microsoft Entra ID Governance
Entra ID Governance ensures the right identities have the right access to the right resources at the right time. It automates identity lifecycle (JML) and access governance for employees, partners, and guests. Requires the Entra ID Governance SKU (P2 + Governance add-on, or M365 E5 + Governance).
When to use
Automating access requests/approvals, recurring access certification, and joiner-mover-leaver provisioning. Use this skill to choose between access packages and direct group assignment, configure access reviews safely, and run lifecycle workflows.
Do not use this skill for risk detection (entra-id-protection), Conditional Access (conditional-access-mfa), or PIM activation (azure-pim).
Pick the right governance mechanism
| If the goal is... | Use | Notes | |---|---|---| | Self-service access request with approval | Entitlement management - access package | Includes guests; sponsor or manager approval | | Time-bound access for a project | Access package with expiration | Auto-revokes; safer than group | | Govern an existing privileged group | PIM for Groups (separate skill) | Just-in-time, not lifecycle | | Recertify membership of a sensitive group | Access review on the group | Manager or self-attestation | | Recertify access to an app | Access review on app assignments | Catches stale SaaS access | | Auto-provision new joiners | Lifecycle workflow - joiner | Pre-hire setup, welcome email | | Auto-revoke leaver access | Lifecycle workflow - leaver | Disable, group removal, license drop | | Move to new department auto-adjust access | Lifecycle workflow - mover + dynamic groups | Attribute-driven | | Catch toxic role combos (e.g. AP + AR) | Separation of duties on access package | Hard-block incompatible packages |
> Rule of thumb: if humans request the access, use an access package. If the system grants > the access from HR attributes, use lifecycle workflows + dynamic groups. Direct group > assignment is the legacy default and rarely correct in 2026.
Approach
- Define the catalogue — Access packages live in a catalogue. Catalogues map to a
business owner (HR, Finance, Engineering platform team). Catalogue owners are accountable; IT facilitates. Verify: each catalogue has a named non-IT owner.
- Build access packages with policies — Each package has resources (groups, apps,
SharePoint sites), eligible requesters (internal users, specific connected orgs, all external), and an assignment policy (approval, expiration, attribute requirements). Verify: every package has expiration set; no perpetual access.
- Configure access reviews safely — Set reviewer (manager > self > specific user),
recurrence (quarterly Tier 0, bi-annually Tier 1, annually Tier 2). Critical: choose "no response" action carefully - auto-remove on no response is safer for low-risk resources but dangerous if the reviewer is on leave. Verify: reviewer escalation enabled; "no response" defaults documented per review.
- Lifecycle workflows for JML — Build three core flows: Pre-hire (T-7 days),
Joiner (start date), Leaver (last day). Use HR attributes as triggers (employeeType, employeeHireDate, accountEnabled). Verify: leaver flow disables account, removes from all groups, revokes sessions, within 1 hour of HR attribute change.
- Separation of duties on access packages — Mark incompatible packages (e.g. "Accounts
Payable" + "Vendor Master Data Editor"). System blocks the second request with audit log.
- Guest governance — All B2B guests via access packages with expiration. Run a quarterly
review of guests with no recent activity (use signInActivity filter). Remove inactive guests automatically. Verify: guests created outside an access package = 0 in monthly report.
Guardrails
- **Prioritise leaver/deprovisioning automation - orphaned access is a common breach root
cause.** Leaver workflow within 1 hour of HR change, hard, not negotiable.
- Set review reviewers and fallback actions carefully so "no response" doesn't auto-approve.
Default to "no response = remove" with reviewer escalation.
- Access packages for guests, always. B2B invitations outside packages bypass expiration
and reviews.
- Separation of duties only works if both packages are governed. If one role assignment
is direct (not via package), SoD won't see it.
- Lifecycle workflows are triggered by attributes. If HR doesn't push reliable attribute
data, workflows won't fire. Validate the HR sync before relying on automation.
- Don't put PIM-eligible roles in access packages. Use PIM for Groups so activation is
separate from assignment.
Common anti-patterns
- "Provision via Active Directory groups, deprovision via ticket" - Asymmetric, leaks
access. Both sides need to be automated.
- "Access reviews once a year" - 12 months of drift. Quarterly for sensitive resources.
- "Reviewer = the resource owner" - Owner has bias to approve. Manager of the user is
better; self-review only for low-risk.
- "Guest invitations from any user" - Untracked guests sprawl. Restrict invitations to
access package requests + a small invitations team.
- "Lifecycle workflow runs on Day 1" - Joiner needs access ready before Day 1. Pre-hire
flow at T-7 days.
- "Direct group assignment is faster than building a package" - Faster once, slower
forever after (no review, no expiration, no audit).
Example prompts
Build an access package for guest contractors with sponsor approval and 90-day expiration.Set up lifecycle workflows for pre-hire, joiner, and leaver using HR attributes.Configure quarterly access reviews on our privileged group with manager review.Enforce separation of duties between "Accounts Payable" and "Vendor Master" access packages.Audit and remove inactive guests with no sign-in in 90 days.Move from direct group assignment to access packages for self-service.
Microsoft Learn
- ID Governance overview: https://learn.microsoft.com/entra/id-governance/identity-governance-overview
- Entitlement management: https://learn.microsoft.com/entra/id-governance/entitlement-management-overview
- Access reviews: https://learn.microsoft.com/entra/id-governance/access-reviews-overview
- Lifecycle workflows: https://learn.microsoft.com/entra/id-governance/what-are-lifecycle-workflows
- Separation of duties: https://learn.microsoft.com/entra/id-governance/entitlement-management-access-package-incompatible
- Guest access governance: https://learn.microsoft.com/entra/id-governance/entitlement-management-external-users
- Access review with PIM: https://learn.microsoft.com/entra/id-governance/privileged-identity-management/pim-create-roles-and-resource-roles-review
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: vinayaklatthe
- Source: vinayaklatthe/microsoft-security-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.