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/exchange-online-powershell-v2.md
+28-15Lines changed: 28 additions & 15 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: deniseb
6
-
ms.date: 07/11/2025
6
+
ms.date: 07/31/2025
7
7
ms.audience: Admin
8
8
audience: Admin
9
9
ms.topic: article
@@ -200,9 +200,15 @@ The procedures in this section explain how to install, update, and uninstall the
200
200
201
201
### Supported operating systems for the Exchange Online PowerShell module
202
202
203
-
Versions of the module since 2021 are officially supported in PowerShell 7 on Windows, Linux, and Apple macOS (PowerShell 7.0.3 or later).
203
+
The module is officially supported in PowerShell 7 on Windows, Linux, and Apple macOS:
204
204
205
-
For more information about PowerShell 7, see [Announcing PowerShell 7.0](https://devblogs.microsoft.com/powershell/announcing-PowerShell-7-0/).
205
+
- Module versions 3.5.1 (July 2024) or later require PowerShell 7 version 7.4.0 (November 2023) or later. Earlier versions of PowerShell 7 might encounter compatibility issues due to missing .NET 8.0 assemblies (v3.5.1 is built on .NET 8.0).
206
+
- Module versions 2.0.4 (February 2021) to 3.5.0 (May 2024) are supported in PowerShell 7 version 7.0.3 (July 2020) or later.
207
+
208
+
For more information about PowerShell 7, see [What is PowerShell?](/powershell/scripting/overview).
209
+
210
+
> [!TIP]
211
+
> All versions of the module are supported and compatible in Windows PowerShell 5.1.
206
212
207
213
#### Apple macOS
208
214
@@ -261,23 +267,30 @@ Now you can do the [regular PowerShell prerequisites](#prerequisites-for-the-exc
261
267
262
268
#### Windows
263
269
264
-
All versions of the module are supported in Windows PowerShell 5.1.
270
+
-**Windows PowerShell 5.1**:
271
+
- All versions of the module are supported.
272
+
- Version 2.0.5 (May 2021) or later versions of the module require the Microsoft .NET Framework 4.7.2 or later to connect. Otherwise, you get a `System.Runtime.InteropServices.OSPlatform` error. For more information about versions of Windows that support the .NET Framework 4.7.2, see [this article](/dotnet/framework/migration-guide/versions-and-dependencies#net-framework-472).
265
273
266
-
PowerShell 7 on Windows requires version 2.0.4 or later.
274
+
> [!TIP]
275
+
> Current versions of Windows include the required versions of .NET and/or the .NET Framework, so you don't need to install .NET or the .NET Framework to use the module in Windows PowerShell 5.1.
267
276
268
-
Version 2.0.5 or later of the module requires the Microsoft .NET Framework 4.7.2 or later to connect. Otherwise, you get a `System.Runtime.InteropServices.OSPlatform` error. This requirement shouldn't be an issue in current versions of Windows. For more information about versions of Windows that support the .NET Framework 4.7.2, see [this article](/dotnet/framework/migration-guide/versions-and-dependencies#net-framework-472).
277
+
-**PowerShell 7**:
278
+
- Module versions 3.5.1 (July 2024) or later require PowerShell 7 version 7.4.0 (November 2023) or later. Earlier versions of PowerShell 7 might encounter compatibility issues due to missing .NET 8.0 assemblies (v3.5.1 is built on .NET 8.0).
279
+
- Module versions 2.0.4 (February 2021) to 3.5.0 (May 2024) are supported in PowerShell 7 version 7.0.3 (July 2020) or later.
269
280
270
281
Windows PowerShell requirements and module support **in older versions of Windows** are described in the following list:
271
282
272
-
- Windows 8.1¹
273
-
- Windows Server 2012 or Windows Server 2012 R2¹
274
-
- Windows 7 Service Pack 1 (SP1)² ³ ⁴
275
-
- Windows Server 2008 R2 SP1² ³ ⁴
276
-
277
-
- ¹ PowerShell 7 on this version of Windows requires the [Windows 10 Universal C Runtime (CRT)](https://www.microsoft.com/download/details.aspx?id=50410).
278
-
- ² Support for this version of Windows is over. This version of Windows is supported only in Azure virtual machines.
279
-
- ³ This version of Windows supports only v2.0.3 or earlier versions of the module.
280
-
- ⁴ Windows PowerShell 5.1 on this version of Windows requires the .NET Framework 4.5 or later and the Windows Management Framework 5.1. For more information, see [Windows Management Framework 5.1](https://aka.ms/wmf5download).
283
+
- Windows 10¹
284
+
- Windows 8.1² ³
285
+
- Windows Server 2012 or Windows Server 2012 R2² ³
286
+
- Windows 7 Service Pack 1 (SP1)² ⁴ ⁵
287
+
- Windows Server 2008 R2 SP1² ⁴ ⁵
288
+
289
+
¹ Windows 10 Anniversary Update (version 1607 from August 2016) is the earliest version of Windows 10 that's reliably compatible with the .NET Framework 4.7.2 (v2.0.5 or later versions of the module in Windows PowerShell 5.1).<br/>
290
+
² Support for this version of Windows is over. This version of Windows is supported only in Azure virtual machines.<br/>
291
+
³ PowerShell 7 on this version of Windows requires a compatible version of .NET Core or .NET runtime and the [Windows 10 Universal C Runtime (CRT)](https://support.microsoft.com/topic/c0514201-7fe6-95a3-b0a5-287930f3560c). The last officially supported version of PowerShell 7 on this version of Windows is 7.2 (7.2.19 from August 2024), which means the last supported version of the module in PowerShell 7 is v3.5.0 (May 2024).<br/>
292
+
⁴ The latest version of the module supported on this version of Windows is v2.0.3 (September 2020).<br/>
293
+
⁵ Windows PowerShell 5.1 on this version of Windows requires the .NET Framework 4.5 or later and the Windows Management Framework 5.1. For more information, see [Windows Management Framework 5.1](https://aka.ms/wmf5download).
281
294
282
295
### Prerequisites for the Exchange Online PowerShell module
applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
10
5
title: Add-ADPermission
6
+
schema: 2.0.0
7
+
author: chrisda
8
+
ms.author: chrisda
9
+
ms.reviewer:
11
10
---
12
11
13
12
# Add-ADPermission
@@ -89,15 +88,13 @@ This example assumes that another security mechanism is used to ensure the Recei
89
88
## PARAMETERS
90
89
91
90
### -Identity
92
-
93
-
> Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
94
-
95
91
The Identity parameter specifies the identity of the object that's getting permissions added. You can specify either the distinguished name (DN) of the object or the object's name if it's unique. If the DN or name contains spaces, enclose the name in quotation marks (").
96
92
97
93
```yaml
98
94
Type: ADRawEntryIdParameter
99
-
Parameter Sets: AccessRights, Owner, Instance
95
+
Parameter Sets: AccessRights, Owner
100
96
Aliases:
97
+
Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
101
98
102
99
Required: True
103
100
Position: 1
@@ -106,16 +103,27 @@ Accept pipeline input: True
106
103
Accept wildcard characters: False
107
104
```
108
105
109
-
### -Instance
106
+
```yaml
107
+
Type: ADRawEntryIdParameter
108
+
Parameter Sets: Instance
109
+
Aliases:
110
+
Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
110
111
111
-
> Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
112
+
Required: False
113
+
Position: 1
114
+
Default value: None
115
+
Accept pipeline input: True
116
+
Accept wildcard characters: False
117
+
```
112
118
119
+
### -Instance
113
120
The Instance parameter enables you to pass an entire object to the command to be processed. It's mainly used in scripts where an entire object must be passed to the command.
114
121
115
122
```yaml
116
123
Type: ADAcePresentationObject
117
124
Parameter Sets: Instance
118
125
Aliases:
126
+
Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
> Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
130
-
131
136
The Owner parameter specifies the owner of the Active Directory object. You can specify the following types of users or groups (security principals) for this parameter:
132
137
133
138
- Mailbox users
@@ -153,6 +158,7 @@ You can't use this parameter with the AccessRights or User parameters.
153
158
Type: SecurityPrincipalIdParameter
154
159
Parameter Sets: Owner
155
160
Aliases:
161
+
Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
> Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
167
-
168
171
The User parameter specifies who gets the permissions on the Active Directory object. You can specify the following types of users or groups (security principals) for this parameter:
169
172
170
173
- Mailbox users
@@ -193,8 +196,9 @@ You can't use this parameter with the Owner parameter.
193
196
194
197
```yaml
195
198
Type: SecurityPrincipalIdParameter
196
-
Parameter Sets: AccessRights, Instance
199
+
Parameter Sets: AccessRights
197
200
Aliases:
201
+
Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
> Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
271
-
272
282
The Confirm switch specifies whether to show or hide the confirmation prompt. How this switch affects the cmdlet depends on if the cmdlet requires confirmation before proceeding.
273
283
274
284
- Destructive cmdlets (for example, Remove-\* cmdlets) have a built-in pause that forces you to acknowledge the command before proceeding. For these cmdlets, you can skip the confirmation prompt by using this exact syntax: `-Confirm:$false`.
@@ -278,6 +288,7 @@ The Confirm switch specifies whether to show or hide the confirmation prompt. Ho
278
288
Type: SwitchParameter
279
289
Parameter Sets: (All)
280
290
Aliases: cf
291
+
Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
> Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
310
-
311
317
The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.
312
318
313
319
The DomainController parameter isn't supported on Edge Transport servers. An Edge Transport server uses the local instance of Active Directory Lightweight Directory Services (AD LDS) to read and write data.
@@ -316,6 +322,7 @@ The DomainController parameter isn't supported on Edge Transport servers. An Edg
316
322
Type: Fqdn
317
323
Parameter Sets: (All)
318
324
Aliases:
325
+
Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
> Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
410
-
411
407
The WhatIf switch simulates the actions of the command. You can use this switch to view the changes that would occur without actually applying those changes. You don't need to specify a value with this switch.
412
408
413
409
```yaml
414
410
Type: SwitchParameter
415
411
Parameter Sets: (All)
416
412
Aliases: wi
413
+
Applicable: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019
0 commit comments