Announcing Deprecation of Remote PowerShell (RPS) Protocol in Exchange Online PowerShell
Update 5/8/2023: We have added new information about the deprecation of RPS in the Security and Compliance PowerShell module in the post below. For more information on RPS deprecation for Exchange Online cmdlets, please see our newer blog post.
Exchange Online PowerShell is the administrative interface that enables admins to manage Exchange Online using the command line. For years, admins have used Remote PowerShell (RPS) which is enabled by default and is easy to use. PowerShell (PS) cmdlets in Exchange Online use Remote PowerShell (RPS) protocol for client to server communication.
You might already be aware that we made REST-based Exchange Online PowerShell v3 module generally available in September 2022. As we continue to enhance the security of our cloud, our plan is to move the Exchange Online admin experience to REST-based APIs. As part of that plan, we will be deprecating the legacy RPS protocol.
The RPS deprecation plan applies to all Exchange Online customers using RPS in any way (using PS module or otherwise). We recommend that all customers move to the v3 module (which is more secure and more reliable than the older PowerShell modules.)
RPS use through New-PSSession and Exchange Online PS v1 and v2 modules will not receive feature updates
Starting today, RPS use through running New-PSSession cmdlet to establish connection and the Exchange Online PS v1 and v2 modules will no longer receive feature updates. The v1 module deprecation will be completed by January 2023. Using RPS through New-PSSession and the v2 module deprecation will be completed by July 2023. We strongly suggest migrating to the v3 module as soon as possible to access Exchange Online and gain access to the latest features and functionality.
The v3 module has complete feature parity with RPS. For scenarios that need a PS interface, we have built a client module that contains a new Connect-ExchangeOnline method. This method calls into a REST endpoint that returns the same set of cmdlets and parameters provided by the RPS. If you find any differences, please let us know at RPSdeprecation@service.microsoft.com.
RPS protocol will be deprecated in June 2023
Today, we are announcing that starting June 1, 2023, we will start blocking RPS connections to Exchange Online and will block RPS for all tenants by July 1, 2023. After July 1, customers will not be able to use RPS when connecting to Exchange Online and will have to use the v3 module with REST cmdlets instead.
How does this affect you and what are your next steps?
We understand changes like this may cause some inconvenience, but they are necessary to provide a more secure and reliable experience for our customers.
If you are using RPS to establish an Exchange Online connection, you will not be able to do so after July 1, 2023. If you use the following, then you are using RPS:
- Connection using New-PSSession
- Exchange Online PowerShell v1 and v2 modules
- Any newer version of Exchange Online PowerShell module with the -UseRPSSession parameter
To switch to the v3 module and use REST cmdlets, take the following steps:
If you are using New-PSSession to establish an RPS connection:
- Install the latest Exchange Online Management v3 module from here.
- Use Connect-ExchangeOnline instead of New-PSSession to establish connection.
If you have installed any module earlier than v3:
- Uninstall previous versions of ExchangeOnlineManagement module by running "Uninstall-Module ExchangeOnlineManagement" from an elevated (admin) PowerShell command prompt.
- Install the latest Exchange Online Management v3 module from here.
- Discontinue the use of -UseRPSSession parameter (if you are using it.)
There are some new features and minor breaking changes in the v3 module. Please keep them in mind while testing any scripts with v3 module. You can read more here.
What about Security and Compliance cmdlets?
Updated 5/8/2023: Connect-IPPSSession (Security and Compliance PowerShell module cmdlets) are now also scheduled for deprecation of RPS protocol. Please see Deprecation of Remote PowerShell (RPS) Protocol in Security and Compliance PowerShell for more information.
We are excited about providing you with a more secure and performant environment, and we remain committed to our journey to empower you with the most modern features and tools. If you have questions/concerns about Exchange Online RPS deprecation, please leave comments here or email us directly at RPSdeprecation@service.microsoft.com.
Exchange Online Manageability Team