Automating Microsoft Teams Channel Provisioning with Graph API
Provisioning Microsoft Teams channels manually is fine for a handful of teams, but it quickly becomes unsustainable when onboarding projects at scale. Using the Microsoft Graph API through PowerShell, you can create teams, add channels, and assign members...
Implementing Azure Policy as Code with GitHub Actions
Azure Policy is a powerful governance tool, but when policies are created manually through the portal they quickly become undocumented and inconsistent across environments. By storing policy definitions in a Git repository and deploying them through GitHub Actions,...
Managing Azure RBAC Assignments at Scale with PowerShell
As Azure environments grow, keeping role assignments consistent and compliant becomes a significant operational challenge. Drifted permissions, orphaned identities, and undocumented manual assignments all create security risk. Using PowerShell to audit and enforce...
Automating Windows Autopilot Device Enrollment with PowerShell
Windows Autopilot transforms device provisioning from a multi-hour imaging process into a zero-touch deployment experience. When you combine it with PowerShell automation, you can register hardware hashes, assign profiles, and track enrollment status entirely from the...
Configuring Conditional Access Policies with Microsoft Entra ID
Conditional Access is the cornerstone of Zero Trust security in Microsoft Entra ID. Rather than managing dozens of policies by hand through the Azure portal, you can use PowerShell and the Microsoft Graph API to define, deploy, and version-control your policies with...
Automating Intune Device Compliance Policies with PowerShell
Manually configuring Microsoft Intune compliance policies across hundreds of devices is tedious and error-prone. By leveraging the Microsoft Graph API through PowerShell, you can define, deploy, and audit compliance policies programmatically — making your...
Enroll in Azure AD with error 8018000a
The 801800A issue is usually caused by a Windows client thinking it has a enrollment to Entra ID in progress. It will not “time out” so you will have to manually fix this…
Office365 Safe Attachment Delay Report
Recently the Helpdesk have been getting cases about slow delivery times due to Office 365 ATP Safe Attachments. We have created a script to retrieve the data from Exchange Online, and then used Power BI to visualize it.







