You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: exchange/docs-conceptual/connect-to-scc-powershell.md
+1-3Lines changed: 1 addition & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: Connect to Security & Compliance PowerShell
3
3
author: chrisda
4
4
manager: dansimp
5
-
ms.date: 11/7/2023
5
+
ms.date: 12/12/2023
6
6
ms.audience: Admin
7
7
audience: Admin
8
8
ms.topic: article
@@ -171,8 +171,6 @@ If you receive errors, check the following requirements:
171
171
172
172
- A common problem is an incorrect password. Run the three steps again and pay close attention to the username and password that you use.
173
173
174
-
- To help prevent denial-of-service (DoS) attacks, when you connect using remote PowerShell mode, you're limited to five open connections to Security & Compliance PowerShell.
175
-
176
174
- The account that you use to connect must be enabled for PowerShell. For more information, see [Enable or disable access to Exchange Online PowerShell](disable-access-to-exchange-online-powershell.md).
177
175
178
176
- TCP port 80 traffic needs to be open between your local computer and Microsoft 365. It's probably open, but it's something to consider if your organization has a restrictive internet access policy.
Copy file name to clipboardExpand all lines: exchange/docs-conceptual/exchange-online-powershell-v2.md
+37-39Lines changed: 37 additions & 39 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ title: About the Exchange Online PowerShell V3 module
3
3
ms.author: chrisda
4
4
author: chrisda
5
5
manager: dansimp
6
-
ms.date: 11/7/2023
6
+
ms.date: 12/12/2023
7
7
ms.audience: Admin
8
8
audience: Admin
9
9
ms.topic: article
@@ -38,7 +38,7 @@ The rest of this article explains how the module works, how to install and maint
38
38
39
39
## REST API connections in the EXO V3 module
40
40
41
-
All available cmdlets in Exchange Online PowerShell and [virtually all cmdlets](https://techcommunity.microsoft.com/t5/exchange-team-blog/deprecation-of-remote-powershell-rps-protocol-in-security-and/ba-p/3815432) in Security & Compliance PowerShell are backed by a REST API based on the version of the EXO V3 module:
41
+
All available cmdlets in Exchange Online PowerShell and Security & Compliance PowerShell are backed by a REST API based on the version of the EXO V3 module:
42
42
43
43
-**Exchange Online PowerShell**: v3.0.0 or later.
44
44
-**Security & Compliance PowerShell**: v3.2.0 or later.
@@ -67,36 +67,36 @@ REST API cmdlets have the same cmdlet names and work just like their remote Powe
67
67
> [!TIP]
68
68
> The [Invoke-Command](/powershell/module/microsoft.powershell.core/invoke-command) cmdlet doesn't work in REST API connections. For alternatives, see [Workarounds for Invoke-Command scenarios in REST API connections](invoke-command-workarounds-rest-api.md).
69
69
70
-
Consider the following items for connections in remote PowerShell mode:
71
-
72
-
- Remote PowerShell connections are deprecated in Exchange Online PowerShell and will be deprecated in Security & Compliance PowerShell. For more information, see [here](https://techcommunity.microsoft.com/t5/exchange-team-blog/deprecation-of-remote-powershell-in-exchange-online-re-enabling/ba-p/3779692) and [here](https://techcommunity.microsoft.com/t5/exchange-team-blog/deprecation-of-remote-powershell-rps-protocol-in-security-and/ba-p/3815432).
73
-
- Remote PowerShell connections require [Basic authentication in WinRM](#turn-on-basic-authentication-in-winrm) on the client computer. If you don't connect in remote PowerShell mode, you have access to REST API cmdlets _only_.
74
-
-A few REST API cmdlets in Exchange Online PowerShell have been updated with the experimental _UseCustomRouting_ switch. This switch routes the command directly to the required Mailbox server, and might improve overall performance.
75
-
-When you use the _UseCustomRouting_ switch, you can use only the following values for identity of the mailbox:
76
-
- User principal name (UPN)
77
-
- Email address
78
-
- Mailbox GUID
79
-
- The _UseCustomRouting_ switch is available only on the following REST API cmdlets in Exchange Online PowerShell:
80
-
-**Get-Clutter**
81
-
-**Get-FocusedInbox**
82
-
-**Get-InboxRule**
83
-
-**Get-MailboxAutoReplyConfiguration**
84
-
-**Get-MailboxCalendarFolder**
85
-
-**Get-MailboxFolderPermission**
86
-
-**Get-MailboxFolderStatistics**
87
-
-**Get-MailboxMessageConfiguration**
88
-
-**Get-MailboxPermission**
89
-
-**Get-MailboxRegionalConfiguration**
90
-
-**Get-MailboxStatistics**
91
-
-**Get-MobileDeviceStatistics**
92
-
-**Get-UserPhoto**
93
-
-**Remove-CalendarEvents**
94
-
-**Set-Clutter**
95
-
-**Set-FocusedInbox**
96
-
-**Set-MailboxRegionalConfiguration**
97
-
-**Set-UserPhoto**
98
-
99
-
Use the _UseCustomRouting_ switch experimentally and [report any issues](#report-bugs-and-issues-for-the-exchange-online-powershell-module) that you encounter.
70
+
Basic authentication (Remote PowerShell) connections are deprecated in Exchange Online PowerShell and Security & Compliance PowerShell. For more information, see [here](https://techcommunity.microsoft.com/t5/exchange-team-blog/deprecation-of-remote-powershell-in-exchange-online-re-enabling/ba-p/3779692) and [here](https://techcommunity.microsoft.com/t5/exchange-team-blog/deprecation-of-remote-powershell-rps-protocol-in-security-and/ba-p/3815432).
71
+
72
+
A few REST API cmdlets in Exchange Online PowerShell have been updated with the experimental _UseCustomRouting_ switch. This switch routes the command directly to the required Mailbox server, and might improve overall performance.
73
+
74
+
-When you use the _UseCustomRouting_ switch, you can use only the following values for identity of the mailbox:
75
+
-User principal name (UPN)
76
+
- Email address
77
+
- Mailbox GUID
78
+
79
+
- The _UseCustomRouting_ switch is available only on the following REST API cmdlets in Exchange Online PowerShell:
80
+
-**Get-Clutter**
81
+
-**Get-FocusedInbox**
82
+
-**Get-InboxRule**
83
+
-**Get-MailboxAutoReplyConfiguration**
84
+
-**Get-MailboxCalendarFolder**
85
+
-**Get-MailboxFolderPermission**
86
+
-**Get-MailboxFolderStatistics**
87
+
-**Get-MailboxMessageConfiguration**
88
+
-**Get-MailboxPermission**
89
+
-**Get-MailboxRegionalConfiguration**
90
+
-**Get-MailboxStatistics**
91
+
-**Get-MobileDeviceStatistics**
92
+
-**Get-UserPhoto**
93
+
-**Remove-CalendarEvents**
94
+
-**Set-Clutter**
95
+
-**Set-FocusedInbox**
96
+
-**Set-MailboxRegionalConfiguration**
97
+
-**Set-UserPhoto**
98
+
99
+
Use the _UseCustomRouting_ switch experimentally and [report any issues](#report-bugs-and-issues-for-the-exchange-online-powershell-module) that you encounter.
100
100
101
101
- Use the [Get-ConnectionInformation](/powershell/module/exchange/get-connectioninformation) cmdlet to get information about REST-based connections to Exchange Online PowerShell and Security & Compliance PowerShell. This cmdlet is required because the [Get-PSSession](/powershell/module/microsoft.powershell.core/get-pssession) cmdlet in Windows PowerShell doesn't return information for REST-based connections.
102
102
@@ -105,12 +105,10 @@ Consider the following items for connections in remote PowerShell mode:
105
105
|Scenario|Expected output|
106
106
|---|---|
107
107
|Run before a **Connect-ExchangeOnline** or **Connect-IPPSSession** command.|Returns nothing.|
108
-
|Run after a **Connect-ExchangeOnline** or **Connect-IPPSSession** command that connects in remote PowerShell mode.|Returns nothing (use [Get-PSSession](/powershell/module/microsoft.powershell.core/get-pssession)).|
109
108
|Run after **Connect-ExchangeOnline** or **Connect-IPPSSession** command that connects in REST API mode.|Returns one connection information object.|
110
109
|Run after multiple REST-based **Connect-ExchangeOnline** or **Connect-IPPSSession** commands.|Returns a collection of connection information objects.|
111
-
|Run after multiple **Connect-ExchangeOnline** or **Connect-IPPSSession** commands that connect in remote PowerShell mode and REST API mode.|Returns one connection information object for each REST-based session.|
112
110
113
-
- Use the _SkipLoadingFormatData_ switch on the **Connect-ExchangeOnline** cmdlet in REST-based connections to avoid loading format data and to run **Connect-ExchangeOnline** commands faster.
111
+
- Use the _SkipLoadingFormatData_ switch on the **Connect-ExchangeOnline** cmdlet to avoid loading format data and to run **Connect-ExchangeOnline** commands faster.
114
112
115
113
- Cmdlets backed by the REST API have a 15 minute timeout, which can affect bulk operations. For example, the following **Update-DistributionGroupMember** command to update 10000 members of a distribution group might time out:
116
114
@@ -312,9 +310,9 @@ For more information about execution policies, see [About Execution Policies](/p
312
310
#### Turn on Basic authentication in WinRM
313
311
314
312
> [!NOTE]
315
-
> As described [earlier in this article](#rest-api-connections-in-the-exo-v3-module), the information in this section applies to remote PowerShell connections only. Remote PowerShell connections to Exchange Online PowerShell and Security & Compliance PowerShell will be retired. For more information, see [here](https://techcommunity.microsoft.com/t5/exchange-team-blog/deprecation-of-remote-powershell-in-exchange-online-re-enabling/ba-p/3779692) and [here](https://techcommunity.microsoft.com/t5/exchange-team-blog/deprecation-of-remote-powershell-rps-protocol-in-security-and/ba-p/3815432). REST-based connections don't require Basic authentication in WinRM as described in this section.
313
+
> REST-based connections don't require Basic authentication in WinRM as described in this section. As described [earlier in this article](#rest-api-connections-in-the-exo-v3-module), Basic authentication (remote PowerShell) access to Exchange Online PowerShell and Security & Compliance PowerShell are deprecated. The information in this section is maintained for historical purposes.
316
314
317
-
For remote PowerShell connections only (not REST API connections), WinRM needs to allow Basic authentication. **We don't send the username and password combination**. The Basic authentication **header** is required to send the session's OAuth token, because the client-side implementation of WinRM doesn't support OAuth.
315
+
For remote PowerShell connections that don't use the REST API (which are now impossible), WinRM needs to allow Basic authentication. **We don't send the username and password combination**. The Basic authentication **header** is required to send the session's OAuth token, because the client-side implementation of WinRM doesn't support OAuth.
318
316
319
317
To verify that Basic authentication is enabled for WinRM, run the following command in a **Command Prompt** or **Windows PowerShell**:
320
318
@@ -345,15 +343,15 @@ If you don't see the value `Basic = true`, you need to run **one** of the follow
If Basic authentication for WinRM is disabled, you'll get one of the following errors when you try to connect:
346
+
If Basic authentication for WinRM is disabled, you'll get one of the following errors when you try to connect using a Basic authentication (remote PowerShell) connection:
349
347
350
348
> The WinRM client cannot process the request. Basic authentication is currently disabled in the client configuration. Change the client configuration and try the request again.
351
349
>
352
350
> Create Powershell Session is failed using OAuth.
353
351
354
352
### PowerShellGet for REST-based connections in Windows
355
353
356
-
[REST-based connections](#rest-api-connections-in-the-exo-v3-module) in Windows require the PowerShellGet module, and by dependency, the PackageManagement module. Consideration for these modules is more for PowerShell 5.1 than PowerShell 7, but all version of PowerShell benefit from having the latest versions of the modules installed. For installation and update instructions, see [Installing PowerShellGet on Windows](/powershell/scripting/gallery/installing-psget).
354
+
[REST-based connections](#rest-api-connections-in-the-exo-v3-module) in Windows require the PowerShellGet module, and by dependency, the PackageManagement module. Consideration for these modules is more for PowerShell 5.1 than PowerShell 7, but all versions of PowerShell benefit from having the latest versions of the modules installed. For installation and update instructions, see [Installing PowerShellGet on Windows](/powershell/scripting/gallery/installing-psget).
357
355
358
356
> [!NOTE]
359
357
> Beta versions of the PackageManagement or PowerShellGet modules might cause connection issues. If you have connection issues, verify that you don't have Beta versions of the modules installed by running the following command: `Get-InstalledModule PackageManagement -AllVersions; Get-InstalledModule PowerShellGet -AllVersions`.
0 commit comments