Does the thought of opening the command line give the you heebie jeebies? Getting greenscreen flashbacks? Maybe it's just been awhile and you're feeling rusty? Why PowerShell? Why now? We're remote, adopting new technologies more rapidly, and if your IT organization is a Microsoft shop, it's the most powerful and effective mechanism to manage your resources. I'm here to tell you that PowerShell is our friend, nothing to be scared of, and there are great resources to help you shake off the rust.
Have MFA and wondering how PowerShell will integrate? Not to worry, there's a module for that. What is a PowerShell Module? These are bits of code that allow PowerShell to interact, authenticate, manage, and test different systems. There are Modules to manage office365 Exchange mailboxes, Azure Storage, Computers, Users, and Security. There are other modules that enable Git, Chocolately, and other package managers to aid in application deployment, versioning, and management.
If you're looking to shake off the rust, here are some great resources.
From the guys @ Varonis "Hacking with Friends": "Beginner's Guide to Building AD Security Tools with PowerShell" is a great 50-minute video that explains PowerShell with some real-time examples. They also offer a "PowerShell and Active Directory Essentials" class, that expands from the video and is quite useful to bring you up to speed.
Office 365 Reports, found at https://o365reports.com/, has great Microsoft 365 / Exchange Online-centric PowerShell scripts that can be used out-of-the box to export users, groups, mailboxes, and many other reports.
PowerShell Gallery, found at https://www.powershellgallery.com/, is another great resource for PowerShell scripts and modules to aid in the management of your IT ecosystem.
PowerShell ISE (Integrated Scripting Environment) is a powerful GUI which was first introduced with PowerShell V2. Its main purpose is to convert individual PowerShell commands into scripts to perform multiple activities, such as connecting to Office 365, identifying groups/user/etc, and exporting. However, I find the color-coding and command reference helpful when learning or developing your PowerShell chops.
Still not convinced?
Let's talk endgame and I don't mean Thanos or the Avengers here. Why shake off the rust? Or, why learn something new? Speaking from experience, sharpening our PowerShell skills at OBC has made significant improvements in accessibility of valuable information, improving the stability IT environments, automation of many IT tasks, creating and vetting security posture. The other consideration here is survival as Microsoft is migrating more and more functionality to PowerShell with no GUI equivalent. WVD (Windows Virtual Desktop) which is one of the major releases from Azure in the past year, requires PowerShell to both provision and manage. This is more a predictor of the future than an outlier. So get out there, emerge yourself in PowerShell and assemble your own super team of scripts to get the job done and look smart in the process.