Contractors & Externals without an End Date
The question it answers: Which contractor and external member accounts have no end date, expiring access or sponsor?
Contractors and vendor staff often get normal member accounts that nothing ever ends: no leave date, no expiring access package, no sponsor who would notice. When the contract ends, the account stays - with its access.
At a glance
Section titled “At a glance”| Where in the app | Entra ID › Identity Governance & Lifecycle › Contractors without End Date |
| Workload | Entra ID |
| Kind | Findings list · dashboard tile |
| Data | Read from Microsoft 365 when someone first opens it, then kept for the report cache lifetime (Settings > Data & cache, 1 hour unless changed). |
| Licence | None; access package expiry needs Entra ID Governance. |
| Report id (API and MCP) | entra.governance.contractors |
Columns
Section titled “Columns”| Column | Key | Type |
|---|---|---|
| Severity | Severity | Status |
| Employee type | Category | Text |
| Account | Subject | Link |
| Check | Setting | Text |
| Company | Value | Text |
| Finding | Finding | Text |
| Controls | Detail | Text |
| Ends | When | Date |
| Count | Number | Number |
A findings list hides columns that no row fills. Severity is Critical, Serious, Warning, OK or Info; rows rated Critical, Serious or Warning need attention (Working with findings).
What it needs
Section titled “What it needs”Licence: None; access package expiry needs Entra ID Governance.
Application permissions on the IntensiveReports app registration (all permissions):
| Permission | API | What it allows | Note |
|---|---|---|---|
User.Read.All | Microsoft Graph | Read all users’ full profiles | |
User-LifeCycleInfo.Read.All | Microsoft Graph | Read all users’ lifecycle information | |
EntitlementManagement.Read.All | Microsoft Graph | Read all entitlement management resources | optional |
Data sources it reads
GET /v1.0/users?$select=employeeType,companyName,employeeLeaveDateTimeGET /v1.0/users/{id}/sponsors ($batch)GET /v1.0/identityGovernance/entitlementManagement/assignments
Through the API and MCP
Section titled “Through the API and MCP”GET /ir-api/v1/reports/entra.governance.contractors?size=100An AI assistant reads it with the MCP tool get_report and the id entra.governance.contractors. The client needs the Read grant for Entra ID. See Using the API.