Welcome to the Jocha blog!

SCCM Client – Manual install and uninstall

You can deploy the SCCM client several ways, the most common being through SCCM, manual install via the ccmsetup.exe. This article describes how to install and uninstall the client manually.

Installing .NET Framework on Windows 8 and 2012

I have been struggling a bit with adding .NET Framework 3.5 on a few systems (and reference image for MDT). The posts on MSDN and TechNet are good, but not always crystal clear.

Here is how I solved the issues we were experiencing…

Detect and Elevate a PowerShell session

We’ve set out to help a customer with automation within their IT department.
Some daily tasks require an elevated prompt, there is no way around it. But it’s not obvious how to check if the current prompt is elevated, or how to elevate the session. So here is a how-to…

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.

Uninstall all Java versions

I received an inquiry from one of my mid-size (100-200 users) customers today. They’ve been planning on implementing a new online service which requires the latest Java version.

The clients have a large quantity of outdated versions of Java, which needed to be uninstalled before we deployed the newest version.
They are currently running Windows 7 and Windows 8, so somewhat modern operative systems.

Automating Microsoft Teams Channel Provisioning with Graph API

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

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

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

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

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

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

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

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.