Daniel Bradley avatar

How to disable per-user MFA using Microsoft Graph PowerShell

3 days ago | Daniel Bradley

Learn how to use Microsoft Graph PowerShell to disable per-user MFA in Microsoft Entra to support migration to Conditional Access. The post How to disable per-user MFA using Microsoft Graph PowerShell appeared first on Our Cloud Network.

Customize your Windows Sandbox with PowerShell

3 days ago

Today we're going to go a bit deeper into Windows Sandbox by walking through custom configurations with PowerShell. (+)(-)

PowerShell Community Call – May 16th, 2024

3 days ago

Last month's community call with the PowerShell team.

Send Emails with SendGrid and PowerShell [OC]

3 days ago

Learn how you can quickly and easily send emails from PowerShell with SendGrid.

Mastering PowerShell Scripting – Fifth Edition

3 days ago

Automate repetitive tasks and simplify complex administrative tasks using PowerShell

Jeff Hicks avatar

PowerShell Scripting and Toolmaking

3 days ago | Jeff Hicks

At long last I've updated the content of the PowerShell Scripting and Toolmaking book from Leanpub. Get the book and you get future updates for free. (+)(-)

Experimenting with PowerShell Batching and Parallel Execution

3 days ago

PowerShell Parallel Processing is a mechanism to speed the processing of large quantities of data. In this example, we discuss how to use parallel batches to fetch Entra ID account information using mailbox data to drive information retrieval. Although this is only a demonstration of a technique, it might help those who must process thousands of mailboxes or accounts and would like to do so more quickly.

Harm Veenstra avatar

PowerShell Arrays

3 days ago | Harm Veenstra

You probably use it all the time in your scripts, but how do they work? In this blog post, I will show some simple examples of what you can do with them :) (+)(-)

Get SharePoint Files & Folders Created by External Users Using PowerShell

3 days ago

External collaboration in SharePoint Online is essential for certain projects and tasks that might involve users from external organizations. External sharing in SharePoint Online and the ability to grant them access to our resources simplifies communication and bridges the collaboration gaps. (+)(-)

Harm Veenstra avatar

Using Measure-Command and Measure-Object in PowerShell

3 days ago | Harm Veenstra

Measuring is always a good idea for grasping things, such as how long it sometimes takes, how many objects there are in a specific directory, how much space something takes up on a hard drive, etc. In this blog post, I will show you how the Measure-Command and Measure-Object cmdlets work and how you can use them to your advantage.

Daniel Bradley avatar

Report per-user MFA status in Entra using Microsoft Graph PowerShell

5 days ago | Daniel Bradley

Learn how to use Microsoft Graph PowerShell to view the per-user MFA state and method for users in Microsoft Entra. The post Report per-user MFA status in Entra using Microsoft Graph PowerShell appeared first on Our Cloud Network.

Adam Bertram avatar

Tracking Down User Logons with PowerShell and XPath

5 days ago | Adam Bertram

When working with Windows event logs, especially the Security log, there might be instances where you need to extract specific information from events.

Harm Veenstra avatar

Discovering the required Microsoft Graph Permissions using PowerShell or Graph Explorer

9 days ago | Harm Veenstra

When using Microsoft Graph to connect to Azure, Intune, etc., you have to grant the correct permissions and use the proper (and safe ;) ) scopes to connect. This blog post will show a few ways to gather that information.

Bradley Wyatt avatar

How The ConnectWise Manage API Handles Pagination with PowerShell

10 days ago | Bradley Wyatt

If you have ever worked with the Microsoft Graph API, you may be familiar with how it handles pagination, which is returning an @odata.nextLink property in the response containing a URL to the following results page.  I was initially confused when I started working with the ConnectWise PSA API. Although I could specify a pageSize and page parameter, there never seemed to be an indication of where to go for the next page of results.

Alexander Koehler avatar

FullAccess Permissions in Exchange Online with additional information

10 days ago | Alexander Koehler

In mid-March, I received an email from a reader (Sebastian) asking if it was possible to read out all full access permissions and then enrich this information with additional details. Specifically, it was about the department, meaning that the mailbox, authorized user, and the department of the authorized user should be output to a CSV … Read more "FullAccess Permissions in Exchange Online with additional information" Articel FullAccess Permissions in Exchange Online with additional information available first on IT koehler blog.

Daniel Bradley avatar

How to deploy Autopilot Device Preparation Policies with PowerShell

11 days ago | Daniel Bradley

Learn how to deploy Device Preparation Policies in Microsoft Intune programmatically using Microsoft Graph PowerShell. The post How to deploy Autopilot Device Preparation Policies with PowerShell appeared first on Our Cloud Network.

Adam Bertram avatar

How to Leverage Reusable PS Remoting Sessions in your Scripts

12 days ago | Adam Bertram

PS remoting lets you execute commands remotely. Learn how to create and manage persistent sessions in this short how-to covering creating and managing sessions.

Faris Malaeb avatar

Troubleshooting Exchange Online Mailbox Provisioning Errors

15 days ago | Faris Malaeb

Incorrect or missed configurations can lead to errors causing mailbox provisioning failures. One such error, often encountered in the Microsoft Admin Center, is represented by the message: “Exchange Online: An unknown error has occurred. Refer to correlation ID GUID.” This post will help you understand how to identify the cause of this error and provide... The post Troubleshooting Exchange Online Mailbox Provisioning Errors appeared first on Faris Malaeb.

Mike Kanakos avatar

PowerShell Parameters Code Challenge

16 days ago | Mike Kanakos

I’m excited to introduce a fresh addition to the CommandLine.ninja website! Get ready to challenge yourself and improve your PowerShell and automation skills, and maybe even pick up a few tips and tricks! Every week, I’ll provide you with a different subject and two sets of quizzes - one easy and one difficult. The quizzes will comprise a series of questions that center on the weekly topic.

Harm Veenstra avatar

PowerShell Arrays

16 days ago | Harm Veenstra

You probably use it all the time in your scripts, but how do they work? In this blog post, I will show some simple examples of what you can do with them :)

Adam Bertram avatar

PowerShell Tool-Building 101: Building a Computer Inventory Report

18 days ago | Adam Bertram

Join me on an exciting journey as we build a powerful PowerShell tool for generating computer inventory reports! From CSV files to CIM queries and error handling, we'll walk you through each step as we go. Let's script our way to success!

Daniel Bradley avatar

How to Manage Microsoft Entra sign-in logs with PowerShell

19 days ago | Daniel Bradley

Learn how to use Microsoft Graph PowerShell to filter, find and manage the sign-in logs for Microsoft Entra. The post How to Manage Microsoft Entra sign-in logs with PowerShell appeared first on Our Cloud Network.

Jeff Hicks avatar

PowerShell Scripting and Toolmaking

24 days ago | Jeff Hicks

Several years ago Don Jones and I wrote what we hoped would be the definitive book on PowerShell scripting and toolmaking. The book takes all off our years of experience, not only from writing PowerShell code, to teaching and conference presentations where we hear first hand what people struggle with. We published the book on...

Harm Veenstra avatar

Keep Microsoft Teams status Available instead of away using PowerShell

25 days ago | Harm Veenstra

It is one of the things I hear my colleagues, and even my girlfriend, mention regularly... Why does Microsoft Teams think I'm away while I'm not / My PC isn't locked yet... I read a few solutions, setting your status duration to a date in the future, etc... Didn't work :( What does work is running my simple PowerShell scripts, which I will show you in this blog post :)

Adam Bertram avatar

Upload a PowerShell Script to Intune (With PowerShell) From Scratch

25 days ago | Adam Bertram

Automate deploying PowerShell scripts to Intune devices with Azure app registration, Graph API, and more in this step-by-step tutorial.

Harm Veenstra avatar

Parameters for PowerShell Scripts and Functions

one month ago | Harm Veenstra

Using parameters for your Scripts and Functions is very powerful. You don't have to hardcode things in them, making running them from a command line easier. This blog post will show you the parameters I use in most of my scripts and how they work.


Harm Veenstra avatar

Deprecated PowerShell Modules and Azure AD Graph retirement

one month ago | Harm Veenstra

You created a script or function a while back that people in the company use a lot, and suddenly... They come to you telling you that it doesn't work anymore. :( The module you used has become deprecated, cmdlets don't all work anymore, etc. In this blog post, I will show the three most prominent modules that have become deprecated and where you can find good information about the successor to adjust your scripts.

Adam Bertram avatar

PowerShell Testing Mastery with Data-Driven Pester

one month ago | Adam Bertram

I’ve been using Pester for a long time off and on. I’ve always been obsessed with ensuring reliability in my PowerShell code. After writing the Pester Book and mentioning some of the methodologies I used with Pester v4 I’ll present in this blog post, I’ve since learned Pester v5 makes my work so much easier.

Bradley Wyatt avatar

Upload a file to Connectwise and Attach it to a Service Ticket with PowerShell

one month ago | Bradley Wyatt

I have recently been automating a lot within Connectwise PSA. One of the items I set out to do is to upload a file and attach it to a service ticket. This led me to the following article, but after doing some testing, I found that some file types were not properly rendering on the Connectwise side, making me believe there was something wrong with the encoding. I could upload a .txt file without issues, but I also tried with a .

Harm Veenstra avatar

Using $using in PowerShell for local variables in remote sessions

one month ago | Harm Veenstra

When running scripts that connect to remote systems using Invoke-Command, you can use your local variables in the remote session which makes things a lot easier. In this blog post, I will show you how :)

Adam Bertram avatar

Your Go-To PowerShell Template for HTTP-Triggered Azure Functions

one month ago | Adam Bertram

Struggling with messy Azure Functions PowerShell code? Learn how to adapt your scripts for serverless, validate HTTP parameters, throw descriptive errors, and bind PowerShell output to HTTP responses for robust web-friendly functions.

Jeff Hicks avatar

Pick Up The PowerShell Practice Primer

one month ago | Jeff Hicks

A number of years ago, I published book on Leanpub, designed to help you teach yourself PowerShell. After you get through the first Month of Lunches book, what do you do next? The best way to learn PowerShell is to do it. But it might be challending trying to figure out what to do. I...

Harm Veenstra avatar

Report on Non-Compliant Intune devices

one month ago | Harm Veenstra

I received a question on the Microsoft Tech Community forum regarding creating a report about non-compliant Intune devices. The report should give insight into what device has what issue with which setting; the person asking the question was already working on a Microsoft Graph script but couldn't find a suitable way. In this blog post, I will show how to create this report. There are other script

Harm Veenstra avatar

Report from which PowerShell module the cmdlets are from

2 months ago | Harm Veenstra

We all encountered this: you get a script or function that uses a certain cmdlet... And it fails because the cmdlet is not recognized :( But which module should you install to get the script working? Or does your script install or import all the required modules? In this blog post, I will show you how to check from which module(s) the cmdlet(s) originate and if they are present on your system or if you should install them.

Przemyslaw Klys avatar

Active Directory Replication Summary to your Email or Microsoft Teams

2 months ago | Przemyslaw Klys

Active Directory replication is a critical process that ensures the consistent and up-to-date state of directory information across all domain controllers in a domain. Monitoring this process is important as it helps identify any issues that may arise and resolve them quickly. One way to monitor Active Directory replication is by using the Repadmin command-line tool. Repadmin provides a wealth of information about the replication status and health of a domain.

Harm Veenstra avatar

PowerShell data/reference types for variables

2 months ago | Harm Veenstra

When you store data in a variable, PowerShell can store it how you want it to be if you use the correct data type. This blog post will show you how that works and which data types I mostly use for my scripts.

Mark Wragg avatar

Converting Azure DevOps Classic Release deployment pipelines to YAML

2 months ago | Mark Wragg

I recently migrated some Azure DevOps Classic Release deployment pipelines to YAML. There’s obvious benefits to storing your pipelines as code: they become an artifact in source control that can evolve and change as the code they build or deploy does, and you have the benefits of version history and maintaining the pipelines via pull requests. However I also found that I could use logic and expressions to make the pipelines more efficient and easier to maintain and that through templating could easily connect the pipelines together to form what I humorously dubbed the “super pipeline” (but then the name stuck).

Emil Larsson avatar

PowerShell Guide: Script as a Windows Service

2 months ago | Emil Larsson

Red or blue pill If you are in the same rabbit-hole as I was of setting up a Windows Service of any form of looping script, there’s two pills you can choose from: Red Pill: Create a program that abide to the law of the fearsome Service Control Manager. Blue Pill: Write a PowerShell script, 8 lines of XML, and download WinSW.exe WinSW describes itself as following: A wrapper executable that can run any executable as a Windows service, in a permissive license.

Mike Kanakos avatar

How to set and manage Environment Variables with PowerShell

2 months ago | Mike Kanakos

Hey there PowerShell family! Today, I’m excited to share my latest article from petri.com, which discusses setting and managing Environment Variables with PowerShell. The article covers various capabilities of PowerShell, exploring key areas and scenarios that you should understand and master. Here’s a summary of the major topics covered in the article. Introduction to Environment Variables What are they with a focus on how to create and manage them using various methods.

Bradley Wyatt avatar

Getting Started with GitHub Copilot in the CLI

2 months ago | Bradley Wyatt

It was announced recently that GitHub Copilot in the CLI has reached General Availablity for all Individual, Business, and Enterprise customers. In this post, I will show you how you can get download and install the CLI and Copilot extension, authenticate to use Copilot, and the available commands and use cases. Install the GitHub CLI Windows With Windows, we can install the GitHub CLI via the command line (Winget, Chocolatey, or Scoop) or manually from here.

Bradley Wyatt avatar

View and Export your Intune Device Management Scripts Using the Microsoft Graph PowerShell SDK

3 months ago | Bradley Wyatt

Introduction If you’re familiar with Intune, you’re likely aware of its capability to deploy platform or PowerShell scripts to your endpoint devices. Unfortunately, once you upload your script to the portal, there is (at the time of writing this) no easy way to view the script content or download it. Resolution To quickly and easily get Intune scripts, I created a function that allows me to export all the scripts from a tenant en masse and view them in the shell or terminal.


Jeff Hicks avatar

GitHub Scripting Challenge Solution

3 months ago | Jeff Hicks

Earlier this year I appeared on the PowerShell Podcast. I ended the interview with a scripting challenge. The Core Challenge Using whatever tools and techniques you want, write a PowerShell function that will query the Issues section of a GitHub repository and create output showing the number of open issues by label and the percentage...

Jeff Hicks avatar

My Conference Future

3 months ago | Jeff Hicks

I have been an IT professional for over 30 years. I have been speaking publicly and presenting at conferences for probably 25 years. I have presented to all types of groups, from small user groups to large conferences, literally around the world. As I enter the last part of my IT career, I am re-assessing...

Darren Robinson avatar

Visualising your IP Address using PowerShell and AI

3 months ago | Darren Robinson

A few weeks back the Microsoft AI Tour was in Sydney Australia. There was a plethora of great content associated with the wave of everything AI that we are currently in. I gave a quick-fire series of live demos in a theatre session titled PowerShell & ChatGPT – How to Automate Your Way to Generative AI Brilliance.… keep reading The post Visualising your IP Address using PowerShell and AI appeared first on darrenjrobinson - Bespoke Identity and Access Management Solutions.

Mark Wragg avatar

Monitor and manage your Azure cloud costs with a little help from PowerShell

3 months ago | Mark Wragg

Should cloud computing be illegal? Probably not, but it is incredibly easy to get started, equally difficult to stop, and before you know it you could be selling your grandmother just to afford one more month of that delicious compute. Hopefully your circumstances never get that dire, but I’ve seen plenty of companies entrench themselves into the highly addictive world of automated, scalable infrastructure, but then struggle to understand the often-astronomical monthly bill.

Jeff Hicks avatar

PowerShell Refresh

3 months ago | Jeff Hicks

The other day on X, I was asked about what things I would setup or configure on a new PowerShell installation. This is something I actually have thought about and face all the time when I setup a new demo virtual machine. I had been meaning to build new tooling to meet this challenge, and...

Jeff Hicks avatar

Module Linking

3 months ago | Jeff Hicks

I know it has been a while since I've given the blog any attention. I am hoping to correct that in 2024, although I'm already behind schedule. But let's get to it. I have a short tip today that you may find useful, especially if you write modules for your private use. I have a...

Alexander Koehler avatar

Exchange Online mailbox apps check via PowerShell

4 months ago | Alexander Koehler

Some days ago I got a ticket where someone could not load his calendar in Microsoft Teams. Outlook worked fine the only thing was Out of Office Notification, also did not work. After some research I found the solution by activating EWS on this specific mailbox. One our later everything was fine. You can find … Read more "Exchange Online mailbox apps check via PowerShell" Articel Exchange Online mailbox apps check via PowerShell available first on IT koehler blog.