Leveraging PowerShell commands and Microsoft Online Services is an efficient way to streamline administrative tasks, automate workflows, and optimize the management at your workplace.
However, not all commands work as we expect them to - errors can appear without further notice, preventing us from unleashing the potential of PowerShell and Azure ADs.
In this guide, we are going to show you the steps to follow if the command “Connect-MsolService” is not recognized in your session.
How to Fix “Connect-MsolService Is Not Recognized” Error in PowerShell
Connect-MsolService is a PowerShell command that is used to establish a connection to Microsoft Online Services, such as Azure Active Directory (Azure AD) and Exchange Online.
By running this cmdlet in Windows PowerShell, it is possible to establish a connection with an MSOnline Module, successfully using this Microsoft Online Service.
However, the following error message can pop up when attempting to connect to the MSonline PowerShell module:
“The term “Connect-MsolService” is not recognized as the name of a cmdlet, function, script file, or operable program.”
The message continues as follows:
“Check the spelling of the name, or if a path was included, verify that the path is correct and try again.”
According to Microsoft, this error message means that “Connect-MsolService,” is not recognized or available in the Microsoft Azure Active Directory module for Windows PowerShell, and there may be an issue with the cmdlet's name, spelling, or path, mainly because the specified module isn’t loaded correctly.
To fix this error, we need to get the correct module installed before proceeding. Follow the below steps to fix the “Connect-MsolService Not Recognized” error.
Step 1: Install the Correct Version of Azure Active Directory module for Windows PowerShell
First, we are going to install the correct and updated Azure AD module. This will ensure that all MsolService commands run on your session.
Based on Microsoft’s guidelines, begin by downloading the Microsoft Online Services Sign-In Assistant for IT Professionals RTW from the Microsoft Download Center. Follow the installation instructions to complete the setup.
Then, download the Azure Active Directory Module for Windows PowerShell (64-bit version) from the Microsoft Download Center. Execute the installer package by clicking "Run" when prompted.
It’s necessary to ensure that you install and use the 64-bit version for ongoing support and compatibility - otherwise, the command will not be recognized when you try to run the PowerShell module.
Step 2: Run the Below Command in the Windows PowerShell Command Prompt
Once you have installed the correct Azure AD module on your computer, open the PowerShell command prompt, type in the following cmdlet, and hit enter:
This command retrieves information about the currently loaded modules in the PowerShell session, which should include the information needed to run the Connect-MsolService cmdlet as requested.
Step 3: Look for the Module “MSOnline” on the Output
After running the aforementioned command, take a look at the output, and see if the MSOnline module is there. The output should look something like this:
As you can see here, this output is confirming the existence of the "MSOnline" module in the PowerShell session, indicating that it has been successfully loaded.
The module provides a set of exported commands (cmdlets) like the following commands: “Add-MsolRoleMember” and “Remove-MsolContact,” which are now available for use in the current PowerShell environment.
This means that, from now on, the Connect-MsolService command should work. Go back to PowerShell, and attempt to run “Connect-MsolService.”
If it now works, congratulations - the error has been fixed! However, if the module “MSOnline” does not appear on the output, then try the following step.
Step 4: Run the Import-Module MSOnline Command
If, upon running the previously mentioned cmdlet, you notice that the MSOnline module is not already loaded, you’ll need to import it into the current PowerShell session.
First, connect to Exchange Online using remote PowerShell by running the “Connect-ExchangeOnline” cmdlet.
Then, once you have successfully connected to Exchange Online, open the command window and run this command:
This action loads the MSOnline module and makes its cmdlets available for use in the current session, meaning that all MsolService-related cmdlets should work now, including Connect-MsolService.
Step 5: If Necessary, Ask for Assistance
Following the above steps is not always easy. If you are not proficient with PowerShell, or if you believe that you followed the steps and Connect-MsolService is still not recognized, then ask for assistance.
Microsoft encourages all users to create a support request if they can’t fix problems like these for themselves.
Likewise, don’t hesitate to go to the Azure Community for more user support if necessary.
Alternative Solution: Reinstall MSOnline Modules
Another solution to fix the “Connect-MsolService is not recognized” error consists of running the Uninstall-Module cmdlet.
This is used to delete an entire module, and to run it, open PowerShell as an admin and run the following command:
After running the command, it’ll be necessary to locate and delete all MSOnline module folders.
Afterward, reinstall the module with Install-Module -Name MSOnline (or by following the aforementioned install steps), run the commands to import the module, and confirm the availability of the “Connect-MsolService” command, resolving any "Connect-MsolService not recognized" errors.
However, be careful while doing this in administrator mode - proceed with caution when uninstalling, deleting, and reinstalling the MSOnline module. Otherwise, it can cause issues with your Microsoft Online Services setup.
Summary: Fixing “Connect-MsolService Cmdlet Not Recognized”
By following these quick five steps, it’s possible to fix the “Connect-MsolService Not Recognized” error:
- Install the right Azure Active Directory Module from the Microsoft Download Center;
- Run the Get-Module command and ensure MSOnline cmdlets availability;
- If this doesn’t work, run the Import-Module MSOnline command to make certain cmdlets available for their use;
- As a last resort alternative, run the Uninstall-Module cmdlet to completely delete the MSOnline module and reinstall it from the beginning;
- In case you need more help, don’t hesitate to contact your organization’s administrator, open a support ticket to receive direct help from Microsoft, or ask community members in the Azure Community.