Detecting Exchange Online Shared Mailboxes That Need Licenses

Exchange Online shared mailboxes only need licenses if they have an archive, exceed 50 GB in size, or are on litigation hold. The rules are there, but how many tenants check their shared mailboxes to make sure that they’re in compliance. This article explains how to use PowerShell to detect shared mailboxes that need licenses.

Report the Membership of Teams Private Channels

In this article, we explain how to create a report about the Teams private channels found in a tenant together with the members and owners of each channel. The PowerShell script is relatively straightforward and once the data is extracted from Teams, it can be sliced and diced in different ways.

Using Azure Key Vault with Microsoft 365 PowerShell

A previous article explains how to use an Azure Automation runbook to write information to a SharePoint Online site and Teams channel. At the time, I used a stored credential to authenticate and access SharePoint and Teams. Azure Key Vault offers another way to store secrets (bits of information) securely. This article explores how to store secrets in Azure Key Vault and retrieve and use the secrets in a runbook script and interactive PowerShell.

Microsoft Announces New Yammer Administrator Role

A new Yammer administrator role is available in Azure AD. Assignees of the new role become Yammer verified admins and can make changes to both native and non-native Yammer networks. It’s nice to see the new role appearing in Azure AD and no doubt it will be useful to Microsoft 365 tenants that use Yammer, but why did it take so long to happen?

Using the Get-AssociatedTeam Cmdlet to Report Team Memberships

The Get-AssociatedTeam cmdlet is part of V4.6 of the Microsoft Teams PowerShell module. It reports the membership a user account has in teams, including where the account has direct membership of shared channels. The cmdlet makes it easy to generate a report of teams membership, and the PSWriteHTML module makes it easy to output nice PDF reports.

Microsoft Reducing Recovery Time for ex-Inactive Mailboxes to 30 Days

Microsoft plans to reduce the recovery period for inactive mailboxes newly released from retention holds and policies from 183 to 30 days. The change will be implemented worldwide by the end of September. The reduction in recovery time sounds seriously but it’s really not. If you haven’t figured out that you need to recover some data from an old inactive mailbox within 30 days, the data probably isn’t needed. And anyway, if you really want to, you can keep inactive mailboxes forever.

Populate the Membership of a Teams Shared Channel for All Users

This article explains how to populate the membership of a Teams shared channel using PowerShell. The idea is to create a shared channel that’s used for organization-wide communications, like a HR questions and answers channel. Alternatives like using a dynamic Azure AD group with a filter to find Teams users are also considered.

Upgrading the Microsoft 365 User Activity Report with a 180-day Lookback Period

A new version of the Microsoft 365 user activity report PowerShell script is available. This version extends the activity lookback period to 180 days, which is helpful when assessing if user accounts are active when people might be on parental leave or sabbaticals.

Microsoft Revamps Its Guidance for Data Lifecycle and Records Management Licensing

In a welcome move, Microsoft has revamped its guidance for Microsoft 365 compliance licensing, specifically for Data Lifecycle and Records Management. The new text is much clearer about when different licenses are needed to use a feature, which is goodness even if you disagree that a feature should need a high-end license. Now if only Microsoft could do the same for the rest of its documentation…

Microsoft Releases 42 New Sensitive Information Types

Microsoft has released 42 new sensitive information types (SITs) in preview. The new SITs cover credentials used in services such as Azure, GitHub, Amazon, and Google, and can be deployed in Purview solutions like DLP and auto-labeling policies.

Using the Get-TeamAllChannel Cmdlet to Report Microsoft Teams Channels

Version 4.6 of the Microsoft Teams PowerShell module includes the Get-TeamAllChannel cmdlet. As the name implies, the cmdlet returns details of all channels in a team (regular, private, and shared). To see what it does, we wrote a script to report all the channels in teams in a tenant.

OWA Calendar Supports Display of Varying Time Increments and Time Zones

The OWA calendar has gained some new features to help users see more detail about events. Users can choose different time slot lengths from 5 to 60 minutes. They can add time zones to the calendar display, and they can choose a different color for events. Nothing earth-shattering, but the changes will please users.

August 2022 Update Available for Office 365 for IT Pros

Office 365 for IT Pros 2023 Edition

Subscribers to the Office 365 for IT Pros (2023 edition) eBook can download the updated files for the August 2023 release. Twenty-one of the 23 content chapters are updated, something that’s pretty normal for an Office 365 for IT Pros book update. Lots more change is coming, all of which will be covered in future updates.

Word’s New Can Review Sharing Permission

Word review mode has been available for a couple of years (online app only). Review mode is a good way of guiding people to do the right thing when they review documents, and now Microsoft is upgrading the Sharing Link dialog UI with a new “Can Review” permission to make it easier for people to use review mode.

$100 Billion Landmark Reached for Microsoft Cloud

Microsoft’s FY22 Q4 results didn’t reveal too much in terms of real numbers for Office 365 users, or usage of individual workloads like Teams or SharePoint Online. We do know that the Microsoft Cloud segment reached the landmark of $100 billion in annualized run rate ($91.2 billion actual). How much of that is down to Office 365? That takes some guesswork, but we’ve done our best.

Teams Native Files Policy Disables SharePoint and OneDrive Access

The Teams Files policy gives a way for administrators to control if users see the Teams Files tab in every channel and Teams chat, and if they can access OneDrive and SharePoint to upload files. The policy exists for organizations that have standardized on other file storage systems such as Box or Dropbox.

Microsoft Forces Backup Vendors and Customers Toward Teams Export API

In a July 12 announcement, Microsoft says that they will restrict the use of Exchange Web Services to access Teams message data from September 30. Microsoft wants customers to use the Teams Export API instead. All that’s fine, but it means that customers have to change their Teams backup product to one that uses the new API – and they’ll be charged for the privilege of using the Export API.

Using the Outlook Booking with Me Feature

Outlook’s new Booking with Me feature is rolling out worldwide. Any user with an Exchange Online license can create a personal bookings page to allow other internal and external people to book meetings with them. It’s a nice idea and a good example of how Microsoft can use its software toolkit to create new solutions.

How Microsoft Bookings Uses Scheduling Mailboxes

The Microsoft Bookings app is available to many Office 365 users. The app is designed to host a shared calendar for a group of people. The calendars are in special scheduling mailboxes that are created by the Microsoft 365 substrate. Appointments in the calendar can be scheduled by people through a bookings page, which can be on the internet or confined within an organization. It’s a neat way to run an online business – if only Bookings could take in some money for all that scheduled work.

Why Microsoft’s Slowness in Delivering Outlook Roaming Signatures Affects OWA

Microsoft promises they will deliver the long-awaiting Outlook roaming signatures feature in October 2022. There are signs of progress in Outlook beta builds, but the development of the feature has caused some disruption for Microsoft 365 tenants because it broke the cmdlet that updates HTML signatures for OWA. Oh well, it will all be OK in October. At least, that’s the plan.

Reporting SharePoint Online External Users with PowerShell

There are many versions of PowerShell scripts to report SharePoint external users online. Most don’t handle team-connected sites, so we take the time to explain the oddities of the Get-SPOExternalUser cmdlet and create some data that we can report using the PSWriteHTML module. All in day’s work with Microsoft 365.

Microsoft Graph Support for SharePoint Online Tenant Settings

The new tenant admin Microsoft Graph API allows access to read and update SharePoint Online tenant settings. Although the API offers limited capabilities for now, it marks the start of Graph support for tenant settings that are currently managed through admin portals or PowerShell. It’s a welcome development.

Teams Files Channel Tab Keeps Improving

Microsoft has improved the functionality of the Teams Files channel tab since its introduction. The most recent update adds SharePoint’s Grid View and Details pane, and the net effect is that the Files channel tab is now almost as functional as the SharePoint browser interface.

Connecting IMAP4 Clients to Exchange Online with OAuth 2.0

The imminent deprecation of basic authentication for 7 Exchange Online connectivity protocols mean that client updates need to be considered. If you use IMAP4, the Thunderbird client does a good job, but will other clients be able to cope? It’s a good question to ask.

Teams to Auto-Terminate Stale Meetings After 10 Minutes

Stale Teams meetings have just one participant and last more than 10 minutes past the scheduled end time. Soon, Teams will end these meetings automatically. It’s a small but useful change that will prevent Teams meetings lingering on in cyberspace long after anything useful ceased happening in the gathering.

Loop Components Appear in OWA

Loop components are now supported in OWA. The implementation is reasonably close to that of Teams chat, but has some essential differences due to the nature of email. The current state of Loop components mean that they are highly suited for internal communication but not for collaboration outside an organization.

Use the Debug Parameter for Microsoft Graph PowerShell SDK Cmdlets to Expose Graph API Requests

Cmdlets in the Microsoft Graph PowerShell SDK module can interact with many types of Microsoft 365 data using Graph API requests. Adding the Debug parameter gives you an insight into what happens when SDK cmdlets run Graph requests. The knowledge can help you write better code and avoid mistakes, and that’s always a good thing.

Pace Heats Up as Microsoft Stresses Need for Email Client Updates

A new Software Updates page in the Microsoft 365 admin center is intended to help tenant administrators keep an eye on what Office and Windows software people are using. As you’d expect, the page offers no details about non-Microsoft clients connected to Microsoft 365. That’s OK, except when work is needed to make sure that clients can cope with the effects of a massive change, like the October retirement of basic authentication for seven email connection protocols.

Viva Topics Stretches to Teams Chat

Two recent and useful enhancements for Viva Topics are rolling out to Microsoft 365 tenants. You can now include topic cards in Teams chat messages and knowledge managers can add external references (website links) to topic cards. Neither might seem terribly important, but both changes make Viva Topics more useful and usable.

How to Report Azure AD Admin Accounts Not Protected by MFA

Many example PowerShell scripts exist to report Azure AD accounts and their MFA status. Most of the scripts use the old MSOL module. Now we can use the Microsoft Graph PowerShell SDK and some Graph API requests to do the same job, This article explains how, including how to highlight unprotected Azure AD accounts that hold administrative roles.

Imminent Deprecation of Azure AD PowerShell Modules Creates Knowledge Gap in Documentation

Time is ebbing away and the date when the Azure AD PowerShell modules will start not to work is approaching. Microsoft wants customers to upgrade to the Microsoft Graph PowerShell SDK or Graph API requests. That’s fine, but a knowledge gap exists because most of the examples – including in Microsoft’s own documentation – for how to interact with Azure AD via PowerShell use the old modules. And then every other blog on the planet (with some notable exceptions) does the same. So we have work to do to bridge the knowledge gap and help people to make the transition.

Microsoft Launches IMAP4 and POP3 Application Access to Exchange Online Mailboxes

Microsoft has launched application access to Exchange Online via IMAP4 and POP3 using modern authentication. The approach Microsoft takes is reasonable and pragmatic and should be simple enough for app developers to implement. However, with an eye on the future, maybe this isn’t the best strategic choice to make. Moving to the Graph APIs will take more work, but it’s a better long-term solution.

Announcing Office 365 for IT Pros (2023 Edition)

The ninth (2023) edition of the Office 365 for IT Pros eBook is now available. Totally refreshed end-to-end and packed full of new examples and information about Office 365 technology, Office 365 for IT Pros is the ultimate guide to understanding and managing Exchange Online, SharePoint Online, Teams, Planner, Azure AD, and more within the Microsoft 365 ecosystem. The book is packed full of practical examples of using PowerShell and the Microsoft Graph to automate operational processes. Best of all, Office 365 for IT Pros is updated monthly to make sure that its information remains current.

Stream on SharePoint is Fundamentally Different to Stream Classic

Microsoft’s work to create Stream on SharePoint continues unabated, and a handy spreadsheet is available to check features against Stream Classic. One thing’s for sure. Stream on SharePoint (or Stream 2.0) is very different to the Office 365 video portals that have gone before. It’s all about video management services and leveraging SharePoint storage now.

Teams and its Unwanted SharePoint Online Channel Folders

Teams likes to control the channel folders it creates in SharePoint Online, which is why it removes the Delete and Move to options from the folder menu. But once Teams removes a channel permanently, shouldn’t it allow the SharePoint folder to be removed?

SharePoint Online Loses Its Inside Look

Surprisingly, Microsoft has decided to retire the SharePoint Inside Look feature. This is where background processes extract three points from the text of Word documents and use them to help users understand the essence of the document. The text is also used in SharePoint sharing notifications. It’s a pity that the feature is going, but it’s English only and the resources needed to accommodate other languages might be too much for the predicted return.

Microsoft Graph Explorer Boosted by New Features

The Microsoft Graph continues to grow in importance, as do tools like the Graph Explorer web application. The Explorer has received a couple of new and useful features recently, including the generation of PowerShell code snippets. This doesn’t work for every Graph API, but it’s a start and a great enhancement to what’s already a very useful tool.

Disabling Chat Write Access in Teams Meetings for Anonymous Participants

A new feature allows administrators to block the ability of anonymous participants to send chats during Teams meetings. They can still read chats, but can’t send messages. Microsoft calls this write access to chat, which I guess it is. In other news, the new browser interface for Teams meetings is arriving in tenants and it’s much better than the old one.

How the Language for Teams Meeting Invitations is Set by Meeting Policy

A new setting in Teams meeting policies allows administrators to control the languages used to generate Teams meeting invitations. The policy setting takes precedence over the language used by the user who creates a new Teams meeting. You can select up to two languages.