Cleaning Up Old Planner Tasks with PowerShell

Cleaning Up Old Planner Tasks with PowerShell

Microsoft Purview supports retention policies for Planner tasks and that’s the supported way to remove old tasks from plans. But you can also remove old Planner tasks with PowerShell. Just for fun, we show how to find and delete old tasks using the Microsoft Graph PowerShell SDK. Cleaning out obsolete tasks that have been hanging around plans for years speeds up client access. It’s a form of colonic irrigation for plans!

https://office365itpros.com/2026/08/19/clean-up-planner-tasks/

u/Unlikely_Tie1172 — 1 day ago
▲ 13 r/entra+1 crossposts

Calculating the Licensing Requirement for Entra Conditional Access Policies

After the discussion about the licensing gap prompts shown in the Entra admin center, here’s a PowerShell script to compute the set of user accounts that should have Entra P1 licenses. The information comes from the conditions property of conditional access policies with group and directory role membership expanded to find individual accounts. The set is checked against the set of users licensed for Entra P1 to find the accounts that need to be licensed.

https://office365itpros.com/2026/08/18/find-entra-p1-accounts-to-license/

u/Unlikely_Tie1172 — 2 days ago
▲ 2 r/Office365+1 crossposts

How to Use JSON Batching to Permanently Remove Mailbox Items

Following up on the primer explaining how to use JSON batching, this article expands on the principles explored in the primer and explains how to permanently remove batches of mailbox items. Removing mailbox items requires more care and attention than updating some Entra ID user accounts, and we explain what the batch commands are to effect both permanent and recoverable deletions. A full working script is available for you to try out.

https://office365itpros.com/2026/08/17/json-batching-mailbox-items/

u/Unlikely_Tie1172 — 4 days ago
▲ 2 r/Office365+1 crossposts

Expanding Purview DLP and Information Protection to Foreign Platforms

Microsoft Purview is expanding its ability to process data from external services such as Google Workspace and Box through DLP policies and Information Protection auto-labeling. Everything depends on Microsoft Defender for Cloud Apps connectors to fetch data from the external services to Azure to be processed there. This is an esoteric play that will appeal to certain enterprise Microsoft 365 tenants with the need for a common protection strategy across multiple cloud platforms.

https://office365itpros.com/2026/08/14/external-services-dlp/

u/Unlikely_Tie1172 — 7 days ago
▲ 12 r/entra+1 crossposts

Entra Admin Center Flags Licensing Problems with Conditional Access

The Entra admin center is flagging licensing gaps for conditional access. The messages are informational, not the beginning of a new automated billing procedure to charge tenants when Entra ID notices that some accounts use conditional access policies when they don’t have a license. In this article, we discuss the product license insight and how Microsoft measures conditional access usage, and show how to use PowerShell to find who’s using conditional access.

https://office365itpros.com/2026/08/13/licensing-gaps-entra-id/

u/Unlikely_Tie1172 — 8 days ago
▲ 8 r/Office365+1 crossposts

SharePoint Online Expands Sensitivity Labels to OneNote and Video Files

Microsoft has updated SharePoint Online to provide full support for sensitivity labels assigned to OneNote and MP4 files. Full support means that SharePoint Online can decrypt and encrypt file content, which then allows SharePoint to protect the content while storing it in a way that’s accessible to Purview services like Data Loss Prevention and eDiscovery, and of course, accessible to Copilot.

https://office365itpros.com/2026/08/12/sensitivity-label-mp4-onenote/

u/Unlikely_Tie1172 — 9 days ago

Creating a Week-by-Week Report for Open Planner Tasks

Accumulating statistics for open tasks in a Planner plan is helpful to understand how active team members are in clearing assigned tasks. Creating a report showing how the number of open tasks vary by team member over a six-week period delivers another type of insight. It’s the kind of thing that PowerShell is very good at. If data is available, we can report it in different ways!

https://office365itpros.com/2026/08/11/open-tasks-report/

u/Unlikely_Tie1172 — 10 days ago
▲ 4 r/Office365+1 crossposts

How to Bulk Transfer Meeting Ownership Between Mailboxes

The Invoke-ChangeMeetingOrganizer cmdlet can transfer meeting ownership from one user to another. In this article, we discuss using a PowerShell script to transfer meetings in bulk between users. The code requires a mixture of Exchange Online and the Microsoft Graph using a registered Entra ID app. It all sounds complicated, but really isn’t – and the code handles scenarios like transferring meetings from someone leaving the organization.

https://office365itpros.com/2026/08/10/invoke-changemeetingorganizer-bulk/

u/Unlikely_Tie1172 — 11 days ago
▲ 26 r/entra+1 crossposts

Entra ID Dynamic Groups Drop the memberOf Rule Operator

MC1448379 (5 August 2026) announces the retirement of the MemberOf rule operator from Entra ID in early November 2026. The removal of the rule operator might affect the membership rules used for dynamic groups, dynamic administrative units, and auto-assigned entitlement management policies. If a tenant doesn’t act, Entra ID will stop processing the rules and memberships will become increasingly inaccurate. And that’s a bad thing!

This article includes the PowerShell commands to find affected dynamic groups, dynamic administrative units, and auto-assigned entitlement packages. Groups are probably the object that's most affected by the change. No replacement exists for the MemberOf rule operator, so the withdrawal of this (preview) capability might affect some operational processes.

https://office365itpros.com/2026/08/07/memberof-rule-operator/

u/Unlikely_Tie1172 — 14 days ago
▲ 2 r/Office365+1 crossposts

Use the Invoke-ChangeMeetingOrganizer Cmdlet to Transfer Meeting Ownership

The Invoke-ChangeMeetingOrganizer cmdlet transfers meetings from one organizer to another and makes sure that all calendar settings are preserved. All of which sounds good, but some limitations exist that you should be aware of. The most important limitation is that although Exchange Online can switch ownership for a meeting event, it does nothing to update any online component, like a Teams meeting join URL. That remains a manual task.

https://office365itpros.com/2026/08/06/invoke-changemeetingorganizer/

u/Unlikely_Tie1172 — 15 days ago
▲ 8 r/Office365+1 crossposts

Microsoft Defender for Office 365 Blocks Prompt Injections

Microsoft Defender for Office 365 (MDO) can detect and quarantine email containing prompt injections. Shared mailboxes might need MDO Plan 2 licenses if they receive email from external domains. This requirement existed before MDO introduced Prompt Injection Protection, but the advent of the new capability is another reason to check mailbox licensing, especially if your tenant uses Copilot. We have a script to help!

https://office365itpros.com/2026/08/04/microsoft-defender-prompt-injection/

u/Unlikely_Tie1172 — 16 days ago
▲ 5 r/Office365+1 crossposts

Azure Tops $100 Billion As Microsoft Reports FY26 Q4 Results

On July 29, Microsoft released their FY26 Q4 results. We learned that Microsoft 365 Copilot has 30 million paid seats, but that’s still less than 7% of the Microsoft 365 installed base, so there’s lots of room for Copilot to grow. Microsoft didn’t provide a number for Teams monthly active users, which is strange because no new data has appeared for 11 quarters. Among all the numbers, one thing’s for sure. The Microsoft Cloud makes lots of money.

https://office365itpros.com/2026/07/30/fy26-q4-microsoft-results/

u/Unlikely_Tie1172 — 22 days ago
▲ 8 r/Office365+1 crossposts

DLP Prevents Microsoft 365 Copilot from Processing External Email

A new (preview) DLP capability allows Microsoft 365 tenants to block Microsoft 365 Copilot from processing the content of external email. When set, any message coming from a domain that’s not in a tenant’s accepted domain list is blocked for Copilot for grounding, referencing, or summarization. It’s an effective way of blocking threat like prompt injections transmitted in email too, but some people might not like blocking all their external email.

https://office365itpros.com/2026/07/29/dlp-external-email-copilot/

u/Unlikely_Tie1172 — 23 days ago
▲ 2 r/Office365+1 crossposts

Data Lifecycle Management Adds Support for Planner Retention Policies

rom August 2026, Microsoft 365 tenants can apply retention policies to Planner Tasks. We began our preparation to create a retention policy for Planner tasks by writing some PowerShell to test the likely effect of retention. The code scans Microsoft 365 Groups for groups with plans and checks each plan for tasks that would be removed by a retention policy. It’s amazing what some PowerShell can do…

https://office365itpros.com/2026/07/28/planner-tasks-retention/

u/Unlikely_Tie1172 — 24 days ago
▲ 4 r/Office365+1 crossposts

Teams PowerShell Embraces Web Account Manager and Imposes Control Over Federated Chat

Teams released a new version of their PowerShell module on July 19. The new module contains WAM support and cmdlets to limit federated chat for specific users and tenants. The new controls are welcome, but it’s a sad state of affairs that to configure the settings you must install a new version of a module that doesn’t work so well alongside other Microsoft 365 modules.

https://office365itpros.com/2026/07/24/federated-chat-controls/

u/Unlikely_Tie1172 — 28 days ago
▲ 11 r/Office365+1 crossposts

How Permissions Creep Can Halt the Microsoft Graph PowerShell SDK

The Microsoft Graph PowerShell Command Line tools app is how people run Microsoft Graph PowerShell SDK cmdlets. The app can suffer from permissions creep, meaning that over time, the app accrues a set of delegated permissions used by people to access different types of Microsoft 365 and Entra ID information. All is fine until an internal limit is reached, at which point authentication fails and some permissions must be pruned.

https://office365itpros.com/2026/07/23/permissions-creep-sdk/

u/Unlikely_Tie1172 — 29 days ago
▲ 3 r/Office365+1 crossposts

Purview DLP Blocks Sharing Files with Specific Domains or Users

A new DLP rule is available to control sharing of SharePoint and OneDrive files with selected domains and email addresses. The new rule supports an allow list (permit sharing) and can also specify a deny list (block sharing). The user interface takes a little getting used to, but when everything is configured and SharePoint has had a chance to respond to the block, the rule works and any attempt by a blocked user to use a sharing link is refused.

https://office365itpros.com/2026/07/22/block-sharing-dlp-sharepoint/

u/Unlikely_Tie1172 — 30 days ago
▲ 3 r/Office365+1 crossposts

Primer: How to Use JSON Batching to Speed up Graph Processing

JSON batching is one of the most effective ways to speed up the processing of Graph API requests. Although it might seem complicated, once you understand how batches are put together and submitted to the Graph batch endpoint, it’s not that hard. JSON batching is of particular interest to large Microsoft 365 tenants that might need to process tens of thousands of accounts, mailboxes, groups, and so on. All explained here, along with a PowerShell script to show how it’s done.

https://office365itpros.com/2026/07/21/json-batching-primer/

u/Unlikely_Tie1172 — 1 month ago
▲ 1 r/Office365+1 crossposts

Using User Assigned Managed Identities with Microsoft 365 Automation

A user assigned managed identity (UAMI) is a secure method to authenticate with many important endpoints, including the Microsoft Graph. It’s like a system assigned managed identity (SAMI), but the big difference is that a UAMI is an Azure resource that isn’t tied to an automation account. It can be used in multiple areas of Azure and a UAMI might be a better option for large organizations that make extensive use of Azure resources.

https://office365itpros.com/2026/07/20/user-assigned-managed-identity/

u/Unlikely_Tie1172 — 1 month ago
▲ 3 r/exchangeserver+1 crossposts

The Demise of the OWA Light Client

On July 8, Microsoft said that they will retire the OWA Light client for Exchange Server in August 2026. But what happened to the OWA Light client for Exchange Online? It seems like Microsoft announced the retirement of OWA Light for Exchange Online in June 2024, but didn’t really make the fact clear in a blog post about consumer accounts. In any case, you can’t run OWA Light for Exchange Online, even if you wanted to.

https://office365itpros.com/2026/07/17/owa-light-retirement/

u/Unlikely_Tie1172 — 1 month ago