Skip to main content
Microsoft Entra IAM (Identity and Access Management) is part of Microsoft Entra ID (formerly Azure Active Directory). It helps manage users, groups, applications, roles, and MFA (multi-factor authentication). Using Microsoft Graph APIs, you can collect IAM evidence for governance, compliance, and auditing purposes. This handler provides methods to retrieve IAM data like users, groups, service principals (applications), role definitions, and MFA status.

Example

To create the EntraIAMHandler object, initialize it with your Entra Tenant ID, Client ID, and Client Secret (or load them from environment variables).
Collect Users IAM Evidence:
Fetches all users and their IAM-related details (display name, UPN, email, type, assigned roles). Requires User.Read.All and optionally RoleManagement.Read.All.
Collect Groups IAM Evidence:
Fetches all groups and their members (users, devices, service principals). Requires Group.Read.All.
Collect Applications IAM Evidence (Service Principals):
Retrieves all applications (service principals) and their owners. Requires Application.Read.All.
Collect Role Definitions:
Retrieves all built-in and custom role definitions available in Microsoft Entra ID. Requires RoleManagement.Read.Directory.
Collect MFA Status Evidence:
Collects MFA registration status and recent MFA usage from sign-in logs for users. Requires Reports.Read.All, UserAuthenticationMethod.Read.All, and AuditLog.Read.All.
Collect All entra IAM Evidence (Summary):
Fetches users, groups, applications, roles, and MFA evidence in a single call.