Right before sending a customer the link for the tool, I decided to test it and noticed that I encountered an unexpected credential prompt. I updated the parameter name, and then added a new feature as well–a test to see if your tenant has the correct licensing to enable Password writeback. … [ Continue reading ]
Update to the OneDrive for Business Admin Tool
Today, I pressed in a little bit on exploring CSOM–at least as it relates to the OneDrive for Business Admin tool.
One of my peers asked if there was a command that we could use to check to see if a site had been put on a retention hold. … [ Continue reading ]
Update to the Remove-ProxyAddresses Script
This update comes from a user–it’s a pretty simple one.
I posted the script Remove-ProxyAddresses back in 2017 after writing a blog post on the same topic. In my script, I had covered Mailboxes, MailUsers, and Contacts. I did not, however, include RemoteMailboxes, as my original thinking was “if you moved it there, you already got rid of the bad proxies.”… [ Continue reading ]
Update to PwnCheck script
This afternoon, while working with a colleague, I was alerted to a customer that appears to have the same 6-character password set for every user, which honestly, I feel like violates the very notion of a password. They’re not currently in Office 365 (or even Active Directory), but the risk is the same:
Users tend to use the same passwords everywhere.… [ Continue reading ]
Update to AAD Connect Network Test
While troubleshooting an issue for a peer today running the Exchange Hybrid Configuration Wizard, I suspected that the environment might have an authenticated proxy in the way. So, I dug out some code I used in the AAD Connect Network Test for Invoke-WebRequest.… [ Continue reading ]
Update to the Set-UPNWithMailAddress Script
I hadn’t touched this one in a while, but a recent request from a customer had me checking in on it. I tidied it up (no one likes people staring at their dirty laundry), and updated the scripting to be more efficient. … [ Continue reading ]
DLP for Bitcoin Addresses
One of the up-and-coming combination phish-ransom attacks is to trick the mark into thinking that you’ve got access to their data, and then get them to send money to a Bitcoin address to protect them from data leakage. You can create a DLP rule in the Office 365 Security & Compliance Center (or an Exchange Online transport rule) to try to combat this.… [ Continue reading ]
Bulk Converting Office 365 Groups to Teams
This week, while working with one of my peers, a request came in to bulk convert all Office 365 groups to Microsoft Teams. In the Teams UI, you’re only presented the choice to upgrade groups you own, one at a time, to Teams.… [ Continue reading ]
Creating a Teams “New Channel” notification
One of my customers recently asked for a solution to checking a particular Microsoft Team multiple times a day for new channel additions. In their organization, someone is responsible for creating a new channel every time new item for review is published, and then all of the communications, files, and data related to that item is stored in that particular time.… [ Continue reading ]
Hashmaker, Hashmaker, Make Me A Hash
While contemplating methods to determine whether a file had changed or been updated, I thought that an MD5 check would be a pretty simple way to figure out if something was different.
But what if I wanted to check bunches of stuff on the fly?… [ Continue reading ]
Update to the AAD Network Testing Tool
Hey, all! One AAD tool update deserves another!
Every so often, I check in to make sure I’m keeping the AAD Connect Network Test Tool as fresh as I can. I’ve made a few changes to the way it works (hopefully which you all think is for the better). … [ Continue reading ]
Update to the AAD Connect Advanced Permissions tool
It’s been a while since I’ve updated this popular tool, and the need was brought to my attention by a peer who noticed an attribute being exported to on-premises AD (but failing):
As it turns out, the msDS-KeyCredentialLink is required for Windows Hello for Business Hybrid.… [ Continue reading ]
Update to Get-SCCDataExport
Update: The link for the tool has been updated to https://www.powershellgallery.com/packages/Get-SCCExportDataSize/.
I’ve been tinkering around a little with this, hoping to bring some better updates (so maybe you can see who is generating your data exports and go smack them around).… [ Continue reading ]
WhoAmI for Office 365
If you’ve ever struggled to find out who your current session is logged in as when you connected to Office 365, here’s a tidbit to shed some light on it:
(Get-PSSession |?{$_.ComputerName -like “*outlook.com”})[0].RunSpace.ConnectionInfo.Credential.UserName

You can also use RunSpace.OriginalConnectionInfo.Credential.UserName. … [ Continue reading ]
Calculating your Daily Export for the Security & Compliance Center
Update: New link for export script: https://www.powershellgallery.com/packages/Get-SCCExportDataSize/
One of the lesser-known boundaries of Office 365’s Security & Compliance Center is that we only allow 2TB per day export volume. When we talk about exports, we’re talking about the idea of taking content that has been identified via a content search mechanism (content search, eDiscovery case search, etc) and then staged for download.… [ Continue reading ]
