PowerShell version
- Windows PowerShell 5.1
- PowerShell 7+
Windows PowerShell 5.1 is included with Windows 10 and Windows Server 2016+. It is the minimum supported version for most scripts in this toolkit.Check your version:Limitations with 5.1:
- Some Microsoft Graph and Azure modules require PowerShell 7+
- TLS 1.2 must be explicitly enabled for certain module installations:
Required modules
Install only the modules you need for your target platform. RunInstall-Module in an elevated PowerShell session.
| Module | Used for | Install command |
|---|---|---|
ActiveDirectory | Active Directory scripts | See note below — RSAT required |
VMware.PowerCLI | VMware vSphere scripts | Install-Module -Name VMware.PowerCLI |
Microsoft.Graph | Microsoft 365 and Azure scripts | Install-Module -Name Microsoft.Graph |
ExchangeOnlineManagement | Exchange Online scripts | Install-Module -Name ExchangeOnlineManagement |
Microsoft.Online.SharePoint.PowerShell | SharePoint Online scripts | Install-Module -Name Microsoft.Online.SharePoint.PowerShell |
Installation commands
The On Windows 10/11 workstations, install RSAT via Settings > Optional Features, or:
ActiveDirectory module is not available via Install-Module. On Windows Server, enable it with:Required permissions
Each platform requires specific roles or privileges. Confirm you have the appropriate access before running scripts.Active Directory
- Domain user account for read-only reporting scripts
- Domain Admins or delegated OU permissions for scripts that create, modify, or delete objects
- Read access to the target OU specified in
-SearchBase
Azure & Entra ID
- Global Reader for read-only scripts
- User Administrator or Groups Administrator for user and group management
- Global Administrator for tenant-wide configuration scripts
- Appropriate Microsoft Graph API permissions if using app-based authentication
Microsoft Intune
- Intune Administrator role for device management and policy deployment
- Global Administrator for full tenant access
- Scripts in
Intune/Windows/andIntune/macOS/deploy configurations via Intune — changes affect enrolled devices
Exchange Online
- Exchange Administrator role for mailbox and transport rule management
- Global Reader for reporting scripts
-
Connect to Exchange Online before running scripts:
SharePoint Online
- SharePoint Administrator role
-
Connect to SharePoint Online Admin Center before running scripts:
VMware vSphere
- vCenter Server credentials with at minimum Read-Only role for reporting scripts
- VM Power User or Administrator role for scripts that modify VM configuration
-
Connect to vCenter before running PowerCLI scripts:
Next steps
Quick Start
Clone the repository and run your first script
Active Directory
User, group, and domain management automation
