Breaking Changes and Bold Names; Invoke-WebRequest Gets a Security Overhaul While Snover Reveals Why 'Cmdlet' Won
+Searching GitHub Repos and Gists for Text Patterns with PowerShell
Hello fellow PowerShell Engineers! We have yet another great week of PowerShell content. I hope you all are having a great holiday season! I have two sessions submitted for PSConfEU - fingers crossed they get approved :)
GPT. 5.2 Just Dropped - Doug Finke Runs it Live in PowerShell
Doug checks out running GPT 5.2 in PowerShell.
Perform Microsoft Graph Actions using Terraform for Microsoft Graph resources
Brian Veldman has a great blog post on automating administrative tasks in Microsoft Entra ID using the Terraform MSGraph provider. He specifically focuses on the msgraph_resource_action resource to handle non-stateful operations, providing clear code examples for blocking users, sending HTML-formatted emails, and performing password resets without leaving your infrastructure code.
Microsoft Security Copilot: The Beginner’s Guide
Jonathan Edwards has a great video on Microsoft Security Copilot. He explains the prerequisites for setting up the AI assistant, including the necessary E5 license and Azure Security Compute Units (SCUs), before walking through a live demo of features like agents and prompt books. He also provides critical advice on managing costs to avoid large bills and discusses whether the tool is currently a viable investment for MSPs.
Invoke-WebRequest Breaking Change in Windows PowerShell 5.1
Microsoft has introduced a significant security change that now displays a confirmation prompt when using Invoke-WebRequest to fetch web pages without special parameters. This change affects Windows PowerShell 5.1 and could impact existing automation scripts that rely on fetching web content. Administrators should review their scripts and add the appropriate parameters to prevent interactive prompts from breaking automated workflows. https://support.microsoft.com/en-us/topic/powershell-5-1-preventing-script-execution-from-web-content-7cb95559-655e-43fd-a8bd-ceef2406b705
How We Found A Big Vulnerability On Windows
DeadOverflow has an interesting video on a high-severity remote code execution vulnerability in Windows PowerShell where the curl alias (Invoke-WebRequest) improperly parses web content, allowing attackers to execute scripts or launch applications locally simply by having a user connect to a malicious URL.
The Cmdlet Decision: When to Be Weird
Jeffrey Snover shares a fascinating behind-the-scenes look at the early days of PowerShell and the fight to name what we now call “cmdlets.” The post explores why distinctiveness beats conformity when it comes to product naming, using search result data to prove that unique terminology creates better discoverability. It’s a masterclass in how naming decisions shape communities and user experience.
https://www.jsnover.com/blog/2025/12/11/the-cmdlet-decision-when-to-be-weird/
Searching GitHub Repos and Gists for Text Patterns with PowerShell
SkatterBrainz returns to blogging with a practical guide on using PowerShell to search through GitHub repositories and Gists for specific text patterns. The article walks through building a script that can help you locate code snippets, configurations, or any text across your GitHub content. https://skatterbrainz.wordpress.com/2025/12/11/when-santa-brings-you-a-work-request-searching-github-repos-and-gists-for-text-patterns-with-powershell/
Building Custom MCP Tools in PowerShell Universal
Adam Driscoll has a great video on leveraging the experimental Model Context Protocol (MCP) plugin in PowerShell Universal to expose scripts as AI tools, demonstrating how to quickly build a system monitoring dashboard using VS Code Copilot.
PowerShell Try/Catch Specific Error Types
Harm Veenstra at PowerShell is Fun explains how to be more specific when catching errors in PowerShell scripts. Rather than catching all errors with a generic message, the article demonstrates how to target specific error types for more granular exception handling, improving the debugging experience and user feedback in your scripts. https://powershellisfun.com/2025/12/12/powershell-try-catch-specific-error-types/
PowerShell Tips Live from Workplace Ninjas US
Andre Pla with PDQ has an interesting video on leveraging AI tools like GitHub Copilot and Spark for PowerShell development and web app creation with Frank Lesniak and Danny Stutz. They discuss using AI agents in VS Code to generate and refine scripts, implementing a “roles framework” to improve AI outputs, and share their experience building an inclusivity-focused web app during a hackathon.
Entra ECMA2Host Tools PowerShell Module
Darren Robinson has released a new PowerShell module to help administrators work with the ECMA2Host for Entra Outbound Provisioning. If you’ve worked with ECMA2Host, you know the frustration of limited visibility into connectors, especially compared to Microsoft Identity Manager. This module fills that gap. https://blog.darrenjrobinson.com/entra-ecma2host-tools-powershell-module/
Checking Where Tenant Users Go as Guests
Tony Redmond addresses a common administrative challenge: tracking where your tenant users are active as guest accounts in other organizations. While data about user activity is mostly controlled by host tenants, the article shows how to extract useful information from audit sign-in logs using PowerShell to map external guest activity. https://office365itpros.com/2025/12/09/external-guest-activity/
Cryptography, Cracking Codes, and Breaking CBC with Dr. Al Carlson. The PowerShell Podcast E204
Dr. Al Carlson has a fascinating video on the PowerShell Podcast with Andrew Pla where he demystifies complex cryptography by explaining how set theory and mathematical patterns allow for breaking major encryption systems like AES, while also discussing the future of security with polymorphic encryption and quantum computing.
Deploying and Configuring uBlock Origin Lite with PowerShell and Microsoft Intune
Martin Bengtsson makes the case that ad blocking is a fundamental security control for organizations. The article provides a complete guide for deploying uBlock Origin Lite across your enterprise using PowerShell and Microsoft Intune, including configuration options and deployment best practices.
PowerShell String Manipulation: Swap Lines
Patrick Gruenauer walks through practical string manipulation techniques in PowerShell, specifically how to swap lines in text content. The article provides clear examples and explains the key concepts needed to perform this common text processing task. https://sid-500.com/2025/12/09/powershell-string-manipulation-swap-lines/
Testing the MCP Server for Enterprise '
Tony Redmond explores Microsoft’s preview MCP Server for Enterprise, demonstrating how MCP servers can help Microsoft 365 tenants accomplish real work. While the current preview state shows it handles simple questions well, more complex PowerShell generation still needs work. A worthwhile look at what’s coming for AI-assisted administration.
https://office365itpros.com/2025/12/11/mcp-server-for-enterprise/
Create Web Links as HTML Files using PowerShell
Tommy Maynard shares a quick technique for creating web link shortcuts as HTML files using PowerShell. It’s a simple but useful approach for organizing frequently accessed URLs or creating portable bookmark files that work across systems.
https://tommymaynard.com/create-web-links-as-html-files-using-powershell/


Phenomenal curation this week. Snover's cmdlet naming decision is a perfect case study in intentional friction creating value through discoverability. The Invoke-WebRequest security change is interesting becasue it shows how default behaviors can evolve to prevent common attack vectors without breaking legacy workflows. I've applied similar principles when designing CLI tools makign intentionally verbose flags helps reduce accidental misuse in production systems.