Skip to content

Guest Sponsorship Coverage

The question it answers: Which enabled guests have no sponsor, or only sponsors who have left?

Every guest should have someone inside the organisation who is accountable for them - who answers the access review and says when the collaboration ends. Guests whose sponsors have all left are listed first, then guests that never had one.

Where in the appEntra ID › Identity Lifecycle › Guest Sponsorship
WorkloadEntra ID
KindTable
DataBuilt from the tenant data IntensiveReports keeps in memory and refreshes in the background, so it opens at once.
LicenceMicrosoft Entra ID P1 for the sign-in activity column. The rest works without it.
Report id (API and MCP)entra.lifecycle.guest-sponsorship
ColumnKeyType
GuestDisplayNameLink
E-mailMailText
FindingFindingStatus
SponsorsSponsorsText
StateStateText
InvitedCreatedDate
Last sign-inLastSignInDate
FilterKey (API)On when the page opens
Only enabled guests without an active sponsorunsponsoredYes

Licence: Microsoft Entra ID P1 for the sign-in activity column. The rest works without it.

Application permissions on the IntensiveReports app registration (all permissions):

PermissionAPIWhat it allowsNote
User.Read.AllMicrosoft GraphRead all users’ full profiles
User-LifeCycleInfo.Read.AllMicrosoft GraphRead all users’ lifecycle information
Data sources it reads
  • GET /v1.0/users?$filter=userType eq 'Guest'&$expand=sponsors
  • GET /v1.0/users (accountEnabled)
  • GET /v1.0/users?$select=signInActivity
GET /ir-api/v1/reports/entra.lifecycle.guest-sponsorship?size=100
GET /ir-api/v1/reports/entra.lifecycle.guest-sponsorship?filter=unsponsored

An AI assistant reads it with the MCP tool get_report and the id entra.lifecycle.guest-sponsorship. The client needs the Read grant for Entra ID. See Using the API.