Skip to content

Commit 050ff5b

Browse files
authored
Merge branch 'master' into patch-1
2 parents b7d3bbb + f8569b3 commit 050ff5b

File tree

60 files changed

+807
-279
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+807
-279
lines changed

exchange/docs-conceptual/connect-to-exchange-online-powershell.md

Lines changed: 16 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -42,30 +42,35 @@ To use the older Exchange Online Remote PowerShell Module to connect to Exchange
4242
> [!TIP]
4343
> Having problems? Ask in the [Exchange Online](https://go.microsoft.com/fwlink/p/?linkId=267542) forum.
4444
45-
## Connect to Exchange Online PowerShell using MFA and modern authentication
45+
## Connect to Exchange Online PowerShell using modern authentication with or without MFA
4646

47-
If your account uses multi-factor authentication, use the steps in this section. Otherwise, skip to the [Connect to Exchange Online PowerShell using modern authentication](#connect-to-exchange-online-powershell-using-modern-authentication) section.
47+
These connection instructions use modern authentication and work with or without multi-factor authentication (MFA).
4848

49-
**Note**: For other sign in methods that are available in PowerShell 7, see the [PowerShell 7 log in experiences](#powershell-7-log-in-experiences) section later in this topic.
49+
For other sign in methods that are available in PowerShell 7, see the [PowerShell 7 log in experiences](#powershell-7-log-in-experiences) section later in this topic.
5050

5151
1. In a PowerShell window, load the EXO V2 module by running the following command:
5252

5353
```powershell
5454
Import-Module ExchangeOnlineManagement
5555
```
5656

57-
**Note**: If you've already [installed the EXO V2 module](exchange-online-powershell-v2.md#install-and-maintain-the-exo-v2-module), the previous command will work as written.
57+
**Notes**:
58+
59+
- If you've already [installed the EXO V2 module](exchange-online-powershell-v2.md#install-and-maintain-the-exo-v2-module), the previous command will work as written.
60+
- You might be able to skip this step and run **Connect-ExchangeOnline** without loading the module first.
5861

5962
2. The command that you need to run uses the following syntax:
6063

6164
```powershell
62-
Connect-ExchangeOnline -UserPrincipalName <UPN> [-ExchangeEnvironmentName <Value>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions]
65+
Connect-ExchangeOnline -UserPrincipalName <UPN> [-ShowBanner:$false] [-ExchangeEnvironmentName <Value>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions]
6366
```
6467

6568
- _\<UPN\>_ is your account in user principal name format (for example, `[email protected]`).
6669
- When you use the _ExchangeEnvironmentName_ parameter, you don't need use the _ConnectionUri_ or _AzureADAuthorizationEndPointUrl_ parameters. For more information, see the parameter descriptions in [Connect-ExchangeOnline](/powershell/module/exchange/connect-exchangeonline).
6770
- The _DelegatedOrganization_ parameter specifies the customer organization that you want to manage as an authorized Microsoft Partner. For more information, see [Partners](/office365/servicedescriptions/office-365-platform-service-description/partners).
6871
- If you're behind a proxy server, run this command first: `$ProxyOptions = New-PSSessionOption -ProxyAccessType <Value>`, where \<Value\> is `IEConfig`, `WinHttpConfig`, or `AutoDetect`. Then, use the _PSSessionOption_ parameter with the value `$ProxyOptions`. For more information, see [New-PSSessionOption](/powershell/module/microsoft.powershell.core/new-pssessionoption).
72+
- You can often omit the _UserPrincipalName_ parameter in the next step to enter both the username and password after you run the **Connect-ExchangeOnline** command. If it doesn't work, then you need to use the _UserPrincipalName_ parameter.
73+
- If you aren't using MFA, you can often use the _Credential_ parameter instead of the _UserPrincipalName_ parameter. First, run the command `$Credential = Get-Credential`, enter your username and password, and then use the variable name for the _Credential_ parameter (`-Credential $Credential`). If it doesn't work, then you need to use the _UserPrincipalName_ parameter.
6974

7075
**This example connects to Exchange Online PowerShell in a Microsoft 365 or Microsoft 365 GCC organization**:
7176

@@ -97,84 +102,20 @@ If your account uses multi-factor authentication, use the steps in this section.
97102
Connect-ExchangeOnline -UserPrincipalName [email protected] -DelegatedOrganization adatum.onmicrosoft.com
98103
```
99104

100-
For detailed syntax and parameter information, see [Connect-ExchangeOnline](/powershell/module/exchange/connect-exchangeonline).
105+
3. In the sign-in window that opens, enter your password, and then click **Sign in**.
101106

102-
> [!NOTE]
103-
> Be sure to disconnect the remote PowerShell session when you're finished. If you close the PowerShell window without disconnecting the session, you could use up all the remote PowerShell sessions available to you, and you'll need to wait for the sessions to expire. To disconnect the remote PowerShell session, run the following command.
107+
![Enter your password in the Sign in to your account window](media/connect-exo-password-prompt.png)
104108

105-
```powershell
106-
Disconnect-ExchangeOnline
107-
```
109+
4. **MFA only**: A verification code is generated and delivered based on the response option that's configured for your account (for example, a text message or the Microsoft Authenticator app on your device).
108110

109-
## Connect to Exchange Online PowerShell using modern authentication
111+
In the verification window that opens, enter the verification code, and then click **Verify**.
110112

111-
If your account doesn't use multi-factor authentication, use the steps in this section.
112-
113-
**Note**: For other sign in methods that are available in PowerShell 7, see the [PowerShell 7 log in experiences](#powershell-7-log-in-experiences) section later in this topic.
114-
115-
1. In a PowerShell window, load the EXO V2 module by running the following command:
116-
117-
```powershell
118-
Import-Module ExchangeOnlineManagement
119-
```
120-
121-
**Note**: If you've already [installed the EXO V2 module](exchange-online-powershell-v2.md#install-and-maintain-the-exo-v2-module), the previous command will work as written.
122-
123-
2. Run the following command:
124-
125-
> [!NOTE]
126-
> You can skip this step and omit the _Credential_ parameter in the next step to be prompted to enter the username and password after you run the **Connect-ExchangeOnline** command. If you omit the _Credential_ parameter and include the _UserPrincipalName_ parameter in the next step, you're only prompted to enter the password after you run the **Connect-ExchangeOnline** command.
127-
128-
```powershell
129-
$UserCredential = Get-Credential
130-
```
131-
132-
In the credentials prompt, enter your work or school account and password.
133-
134-
3. The last command that you need to run uses the following syntax:
135-
136-
```powershell
137-
Connect-ExchangeOnline [-Credential $UserCredential] [-ShowBanner:$false] [-ExchangeEnvironmentName <Value>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions]
138-
```
139-
140-
- When you use the _ExchangeEnvironmentName_ parameter, you don't need use the _ConnectionUri_ or _AzureADAuthorizationEndPointUrl_ parameters. For more information, see the parameter descriptions in [Connect-ExchangeOnline](/powershell/module/exchange/connect-exchangeonline).
141-
- The _DelegatedOrganization_ parameter specifies the customer organization that you want to manage as an authorized Microsoft Partner. For more information, see [Partners](/office365/servicedescriptions/office-365-platform-service-description/partners).
142-
- If you're behind a proxy server, store the output of the [New-PSSessionOption](/powershell/module/microsoft.powershell.core/new-pssessionoption) cmdlet in a variable (for example, `$ProxyOptions = New-PSSessionOption -ProxyAccessType <Value> [-ProxyAuthentication <Value>] [-ProxyCredential <Value>]`). Then, use the variable (`$ProxyOptions`) as the value for the _PSSessionOption_ parameter.
143-
144-
**Connect to Exchange Online PowerShell in a Microsoft 365 or Microsoft 365 GCC organization**:
145-
146-
```powershell
147-
Connect-ExchangeOnline -Credential $UserCredential
148-
```
149-
150-
**Connect to Exchange Online PowerShell in an Office 365 Germany organization**:
151-
152-
```powershell
153-
Connect-ExchangeOnline -Credential $UserCredential -ExchangeEnvironmentName O365GermanyCloud
154-
```
155-
156-
**Connect to Exchange Online PowerShell in an Office 365 operated by 21Vianet organization**:
157-
158-
```powershell
159-
Connect-ExchangeOnline -Credential $UserCredential -ExchangeEnvironmentName O365China
160-
```
161-
162-
**Connect to Exchange Online PowerShell in a Microsoft 365 GCC High organization**:
163-
164-
```powershell
165-
Connect-ExchangeOnline -Credential $UserCredential -ExchangeEnvironmentName O365USGovGCCHigh
166-
```
167-
168-
**Connect to Exchange Online PowerShell in a Microsoft 365 DoD organization**:
169-
170-
```powershell
171-
Connect-ExchangeOnline -Credential $UserCredential -ExchangeEnvironmentName O365USGovDoD
172-
```
113+
![Enter your verification code in the Sign in to your account window](media/connect-exo-mfa-verify-prompt.png)
173114

174115
For detailed syntax and parameter information, see [Connect-ExchangeOnline](/powershell/module/exchange/connect-exchangeonline).
175116

176117
> [!NOTE]
177-
> Be sure to disconnect the remote PowerShell session when you're finished. If you close the PowerShell window without disconnecting the session, you could use up all the remote PowerShell sessions available to you, and you'll need to wait for the sessions to expire. To disconnect the remote PowerShell session, run the following command:
118+
> Be sure to disconnect the remote PowerShell session when you're finished. If you close the PowerShell window without disconnecting the session, you could use up all the remote PowerShell sessions available to you, and you'll need to wait for the sessions to expire. To disconnect the remote PowerShell session, run the following command.
178119
179120
```powershell
180121
Disconnect-ExchangeOnline

exchange/docs-conceptual/exchange-online-powershell-v2.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,8 @@ Miscellaneous Exchange Online cmdlets that happen to be in the EXO V2 module are
8181

8282
|EXO V2 module cmdlet|Comments|
8383
|---|---|
84-
|[Get-MyAnalyticsFeatureConfig](/powershell/module/exchange/get-myanalyticsfeatureconfig)|This cmdlet is availble in v2.0.4 or later.|
85-
|[Set-MyAnalyticsFeatureConfig](/powershell/module/exchange/set-myanalyticsfeatureconfig)|This cmdlet is availble in v2.0.4 or later.|
84+
|[Get-MyAnalyticsFeatureConfig](/powershell/module/exchange/get-myanalyticsfeatureconfig)|This cmdlet is available in v2.0.4 or later.|
85+
|[Set-MyAnalyticsFeatureConfig](/powershell/module/exchange/set-myanalyticsfeatureconfig)|This cmdlet is available in v2.0.4 or later.|
8686
|[Get-UserBriefingConfig](/powershell/module/exchange/get-userbriefingconfig)|This cmdlet is being replaced by [Get-UserAnalyticsConfig](/powershell/module/exchange/get-useranalyticsconfig).|
8787
|[Set-UserBriefingConfig](/powershell/module/exchange/set-userbriefingconfig)|This cmdlet is being replaced by [Set-UserAnalyticsConfig](/powershell/module/exchange/set-useranalyticsconfig).|
8888
|
@@ -128,18 +128,20 @@ All versions of the EXO V2 module are supported in Windows PowerShell 5.1. Power
128128
The EXO V2 module is supported in the following versions of Windows:
129129

130130
- Windows 10
131-
- Windows 8.1<sup>3</sup>
131+
- Windows 8.1<sup>4</sup>
132132
- Windows Server 2019
133133
- Windows Server 2016
134-
- Windows Server 2012 or Windows Server 2012 R2<sup>3</sup>
134+
- Windows Server 2012 or Windows Server 2012 R2<sup>4</sup>
135135
- Windows 7 Service Pack 1 (SP1)<sup>1,</sup><sup>2,</sup><sup>3</sup>
136136
- Windows Server 2008 R2 SP1<sup>1,</sup><sup>2,</sup><sup>3</sup>
137137

138138
<sup>1</sup> This version of Windows has reached its end of support, and is now supported only in Azure virtual machines.
139139

140-
<sup>2</sup> Windows PowerShell 5.1 on this version of Windows requires the Microsoft .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).
140+
<sup>2</sup> This version of Windows doesn't support version 2.0.4 or later of the EXO V2 module. Only version 2.0.3 or earlier is supported.
141141

142-
<sup>3</sup> PowerShell 7 on this version of Windows requires the [Windows 10 Universal C Runtime (CRT)](https://www.microsoft.com/download/details.aspx?id=50410).
142+
<sup>3</sup> Windows PowerShell 5.1 on this version of Windows requires the Microsoft .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).
143+
144+
<sup>4</sup> PowerShell 7 on this version of Windows requires the [Windows 10 Universal C Runtime (CRT)](https://www.microsoft.com/download/details.aspx?id=50410).
143145

144146
### Prerequisites for the EXO V2 module
145147

Loading
Loading

exchange/exchange-ps/exchange/Add-ADPermission.md

Lines changed: 44 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -133,9 +133,26 @@ Accept wildcard characters: False
133133
```
134134
135135
### -Owner
136-
The Owner parameter specifies the owner of the Active Directory object. If the name of the owner contains spaces, enclose the name in quotation marks (").
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:
137137
138-
The Owner parameter can only be used with the Identity parameter and no other parameters.
138+
- Mailbox users
139+
- Mail users
140+
- Security groups
141+
142+
You can use any value that uniquely identifies the user or group. For example:
143+
144+
- Name
145+
- Alias
146+
- Distinguished name (DN)
147+
- Canonical DN
148+
- Domain\\Username
149+
- Email address
150+
- GUID
151+
- LegacyExchangeDN
152+
- SamAccountName
153+
- User ID or user principal name (UPN)
154+
155+
You can't use this parameter with the AccessRights or User parameters.
139156
140157
```yaml
141158
Type: SecurityPrincipalIdParameter
@@ -151,7 +168,26 @@ Accept wildcard characters: False
151168
```
152169
153170
### -User
154-
The User parameter specifies the user that the permissions are being granted to on the object. If the name contains spaces, enclose the name in quotation marks (").
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:
172+
173+
- Mailbox users
174+
- Mail users
175+
- Security groups
176+
177+
You can use any value that uniquely identifies the user or group. For example:
178+
179+
- Name
180+
- Alias
181+
- Distinguished name (DN)
182+
- Canonical DN
183+
- Domain\\Username
184+
- Email address
185+
- GUID
186+
- LegacyExchangeDN
187+
- SamAccountName
188+
- User ID or user principal name (UPN)
189+
190+
You can't use this parameter with the Owner parameter.
155191
156192
```yaml
157193
Type: SecurityPrincipalIdParameter
@@ -180,7 +216,7 @@ Accept wildcard characters: False
180216
```
181217
182218
### -AccessRights
183-
The AccessRights parameter specifies the rights needed to perform the operation. Valid values include:
219+
The AccessRights parameter specifies the rights that you want to add for the user on the Active Directory object. Valid values include:
184220
185221
- AccessSystemSecurity
186222
- CreateChild
@@ -202,6 +238,10 @@ The AccessRights parameter specifies the rights needed to perform the operation.
202238
- GenericAll
203239
- Synchronize
204240
241+
You can specify multiple values separated by commas.
242+
243+
You can't use this parameter with the Owner parameter.
244+
205245
```yaml
206246
Type: ActiveDirectoryRights[]
207247
Parameter Sets: AccessRights, Instance

exchange/exchange-ps/exchange/Add-MailboxPermission.md

Lines changed: 34 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ Accept wildcard characters: False
139139
```
140140
141141
### -AccessRights
142-
The AccessRights parameter specifies the permission that you want to assign to the user on the mailbox. Valid values are:
142+
The AccessRights parameter specifies the permission that you want to add for the user on the mailbox. Valid values are:
143143
144144
- ChangeOwner
145145
- ChangePermission
@@ -150,6 +150,8 @@ The AccessRights parameter specifies the permission that you want to assign to t
150150
151151
You can specify multiple values separated by commas.
152152
153+
You can't use this parameter with the Owner parameter.
154+
153155
```yaml
154156
Type: MailboxRights[]
155157
Parameter Sets: AccessRights
@@ -195,14 +197,28 @@ Accept wildcard characters: False
195197
```
196198
197199
### -Owner
198-
The Owner parameter specifies the owner of the mailbox object. The default mailbox owner is NT AUTHORITY\\SELF.
200+
The Owner parameter specifies the owner of the mailbox object. You can specify the following types of users or groups (security principals) for this parameter:
201+
202+
- Mailbox users
203+
- Mail users
204+
- Security groups
199205
200-
The owner that you specify for this parameter must be a user or security group (a security principal that can have permissions assigned). You can use any value that uniquely identifies the owner. For example: For example:
206+
You can use any value that uniquely identifies the user or group. For example:
201207
202208
- Name
209+
- Alias
203210
- Distinguished name (DN)
204211
- Canonical DN
212+
- Domain\\Username
213+
- Email address
205214
- GUID
215+
- LegacyExchangeDN
216+
- SamAccountName
217+
- User ID or user principal name (UPN)
218+
219+
The default mailbox owner is NT AUTHORITY\\SELF.
220+
221+
You can't use this parameter with the AccessRights or User parameters.
206222
207223
```yaml
208224
Type: SecurityPrincipalIdParameter
@@ -218,14 +234,26 @@ Accept wildcard characters: False
218234
```
219235
220236
### -User
221-
The User parameter specifies the user that you're assigning the permission to.
237+
The User parameter specifies who gets the permissions on the mailbox. You can specify the following types of users or groups (security principals) for this parameter:
238+
239+
- Mailbox users
240+
- Mail users
241+
- Security groups
222242
223-
The user that you specify for this parameter must be a user or security group (a security principal that can have permissions assigned). You can use any value that uniquely identifies the user. For example: For example:
243+
You can use any value that uniquely identifies the user or group. For example:
224244
225245
- Name
246+
- Alias
226247
- Distinguished name (DN)
227248
- Canonical DN
249+
- Domain\\Username
250+
- Email address
228251
- GUID
252+
- LegacyExchangeDN
253+
- SamAccountName
254+
- User ID or user principal name (UPN)
255+
256+
You can't use this parameter with the Owner parameter.
229257
230258
```yaml
231259
Type: SecurityPrincipalIdParameter
@@ -330,7 +358,7 @@ Accept wildcard characters: False
330358
### -GroupMailbox
331359
This parameter is available only in the cloud-based service.
332360

333-
The GroupMailbox switch is required to modify Group Mailboxes in Exchange Online. You don't need to specify a value with this switch.
361+
The GroupMailbox switch is required to add permissions to a Microsoft 365 Group mailbox. You don't need to specify a value with this switch.
334362

335363
```yaml
336364
Type: SwitchParameter

0 commit comments

Comments
 (0)