Back to Portfolio

M365 User Lifecycle & Group Automation

PowerShell automation suite for enterprise Microsoft 365 user management. Bulk onboarding/offboarding, attribute sync from CSV, license management, and dynamic group creation via Microsoft Graph API with certificate-based authentication.

PowerShell Microsoft 365 Graph API Exchange Online Entra ID

Overview

Built a comprehensive PowerShell automation suite for managing the Microsoft 365 user lifecycle across a multi-location organization. Handles bulk user provisioning, attribute updates, license management, and calendar sharing - all driven by CSV inputs and authenticated via certificate-based Azure AD app registration.

Key Features

  • Bulk user attribute updates from CSV with flexible header mapping
  • Manager hierarchy synchronization across Active Directory and Entra ID
  • License assignment and removal with eligibility validation
  • Calendar sharing delegation for cross-department visibility
  • Custom attribute sync (extensionAttribute1-15) for downstream automation
  • Hire date tracking and onboarding workflow triggers
  • Detailed logging with color-coded console output and log file export

Technical Highlights

  • Microsoft Graph API with certificate-based OAuth 2.0 authentication
  • Exchange Online Management module for mailbox and calendar operations
  • PowerShell data file (.psd1) configuration for environment-specific settings
  • CSV-driven bulk operations with validation and error handling per record
  • Supports multi-tenant configurations (dev and production tenants)
  • Modular function design for reuse across scripts

See more of our work

Check out the rest of the projects and problems we've tackled.

View Portfolio