PowerShell

Latest Articles

Creating New Microsoft 365 Accounts with PowerShell

It's common to find a requirement to create new Microsoft 365 accounts with PowerShell. We're at a point of transition when the old method of using the Azure AD module will switch to the Microsoft Graph PowerShell SDK or Graph API queries. In this article, we explain how to create new accounts and assign licenses with both the Azure AD module and the Microsoft Graph PowerShell SDK.

March 21, 2022

Why Using App Secrets in Production is a Bad Idea

As many organizations adapt legacy scripts to use app authentication instead of traditional service account credentials, security can be compromised if certain risks are overlooked. While app secrets can be great for testing code, there’s a reason they have an enforced expiry date - the longer a secret exists in production, the higher the risk it will become compromised. The methods described in this article will help build a good foundation for app authentication while keeping security top of mind when creating or updating automation scripts.

February 16, 2022

Attack Simulation Training: RBAC and End User Notifications

Attack Simulations are Microsoft’s foray into a crowded field of competitors who provide a service that trains users to recognize dangerous email with simulated Phishing or malware-infested messages. Microsoft has continually added features and functionality since they released Attack Simulations, including additional simulation types, different payloads, custom payloads, customizable training and more. The most recent upgrades are RBAC permissions and end user notifications. These two additions to Attack Simulation Training are a great incentive to deploy and adopt this functionality, as End User communications are the key enhancement that make this feature worthwhile for an organization.

February 15, 2022

Deploying .exe Applications with Microsoft Endpoint Manager

With an increasing number of companies moving to Intune for endpoint management, more applications must be deployed via Intune to ensure users can access the applications they need to perform job functions. This article walks you through the steps to deploy a legacy application and guides you through converting an .exe installer into an import-ready format for Intune.

January 11, 2022

Separating users in Office 365 using Address Book Policies

Microsoft 365 has many built-in controls to manage how users communicate externally, however, these controls do not generally extend to internal communication. While this is fine in most environments, situations exist where a degree of separation is required to segregate communication across different groups of users. This article details the configuration of Address Book Policies, and how they can be extended to include Teams.

January 5, 2022

How to Use Cloud Shell from the Microsoft Teams Admin Center

Microsoft has updated the Teams PowerShell module to allow it to run in a Cloud Shell session. This is good news if you need to run one or two Teams cmdlets without access to your normal workstation, but it's not so good if you expect to run code which runs well in normal PowerShell sessions. The limitations which exist get in the way of getting work done, which is a pity.

December 14, 2021

Use PowerShell to Create a Report About the Teams Policies Assigned to User Accounts

Like all the other Microsoft 365 administrative consoles, the Teams admin center doesn't have any print options. If you want to print off any kind of information about Teams settings, you need to write your own code. PowerShell makes it easy to create a report about the Microsoft Teams policy assignments for user accounts. In this article, we explain how to extract policy information and generate a HTML report.

November 29, 2021

Using Certificate-based Authentication with the Microsoft Graph PowerShell SDK

Although it's easy to write scripts using cmdlets in the Microsoft Graph PowerShell, SDK you probably don't want to execute the scripts interactively. In this article, we explain how to use certificate-based (app-only) authentication to run scripts. This is very much an explanation about how to accomplish the task in a testing environment. If you want to run scripts in production, some extra work is needed.

November 9, 2021

Use Desired State Configuration to Snapshot the Configuration of Your Microsoft 365 Tenant

Microsoft 365 Desired State Configuration (DSC), is a way to capture details of a tenant's configuration using PowerShell in such a way that any changes made to the configuration can be easily detected. DSC allows administrators to understand when configurations change so that they can take action when necessary. In this article, Sean McAvinue explains how to use DSC to capture and report details of your Microsoft 365 tenant.

November 8, 2021