TenantFleet Ecosystem / Body

Groups That Govern. Access That Scales.

Automated group lifecycle engine for Microsoft Entra ID. From smart creation to persona-based RBAC — stop managing groups in spreadsheets.

4
Personas Supported
0
Hardcoded Secrets
Groups Managed
< 30s
Time to Provision

Built for multi-tenant scale

Smart Group Creation

Rule-driven groups that self-maintain membership based on user attributes and lifecycle state.

Persona-Based RBAC

Map personas to security groups, application roles, and SharePoint permissions without manual assignment.

Dynamic Membership

Attribute-based rules keep membership current as users change roles, locations, or brands.

Audit Logging

Every change tracked with before/after state, actor identity, and Graph API correlation ID.

TenantFleet Integration

Native hooks into the TenantFleet topology engine for brand-aware group scoping.

SharePoint Sync

Synchronize Entra group membership to SharePoint permission levels automatically.

Deploy governed access in minutes

PersonaRBAC.ts
import { PersonaRBAC } from '@tenantfleet/entra-groups'; const rbac = new PersonaRBAC({ tenantId: process.env.TENANT_ID, personas: ['msp-core', 'pe-portfolio', 'franchisee'], fallbackGroup: 'all-users' }); // Auto-provision groups on user lifecycle events await rbac.syncGroupsForUser(userId, persona);

Stop managing groups in spreadsheets.

Deploy EntraGroups in minutes. No secrets. No config drift. Just governed access.

Clone on GitHub

The TenantFleet Ecosystem

Install · Architecture · Ecosystem

Install

git clone https://github.com/t-granlund/entragroups.git
cd entragroups

MIT-licensed · open source · fork it and make it yours.

Architecture

Persona resolver → reconciler → Microsoft Graph, with a full before/after audit trail. Membership is a function of who someone is.

Part of the TenantFleet ecosystem · see it on tylergranlund.com/work#ecosystem.