Skip to content

Commit 0e4021a

Browse files
authored
Merge branch 'main' into blackquack-patch-1
2 parents 06ef8da + 1beee1a commit 0e4021a

File tree

741 files changed

+7818
-5331
lines changed

Some content is hidden

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

741 files changed

+7818
-5331
lines changed

.openpublishing.build.ps1

Lines changed: 0 additions & 17 deletions
This file was deleted.

.openpublishing.redirection.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7133,6 +7133,16 @@
71337133
"redirect_url": "/exchange/exchange-hybrid",
71347134
"redirect_document_id": false
71357135
},
7136+
{
7137+
"source_path": "exchange/virtual-folder/exchange/Get-PhishSimOverrideRule.md",
7138+
"redirect_url": "/powershell/module/exchange/get-exophishsimoverriderule",
7139+
"redirect_document_id": false
7140+
},
7141+
{
7142+
"source_path": "exchange/virtual-folder/exchange/Get-SecOpsOverrideRule.md",
7143+
"redirect_url": "/powershell/module/exchange/get-exosecopsoverriderule",
7144+
"redirect_document_id": false
7145+
},
71367146
{
71377147
"source_path": "skype/virtual-folder/skype/Disable-CsOnlineSipDomain.md",
71387148
"redirect_url": "/powershell/module/teams/Disable-CsOnlineSipDomain",

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ Contributors who make infrequent or small updates can edit the file directly on
3232
Articles on learn.microsoft.com are formatted using the Markdown language. For help on using Markdown, see [Mastering Markdown](https://guides.github.com/features/mastering-markdown/).
3333

3434
> [!TIP]
35-
> Cmdlet reference articles follow a very strict schema with limited formatting options, because the articles are also converted and used for help at the command line (`Get-Help <CmdletName`). Use existing content as a guide. For more information, see [platyPS Schema](https://github.com/PowerShell/platyPS/blob/master/platyPS.schema.md).
35+
> Cmdlet reference articles follow a very strict schema with limited formatting options, because the articles are also converted and used for help at the command line (`Get-Help <CmdletName`). Use existing content as a guide. For more information, see [platyPS Schema](https://github.com/PowerShell/platyPS/blob/master/docs/developer/platyPS/platyPS.schema.md).
3636
3737
Select **Preview** to view your changes as you go. Select **Edit** to go back to making updates.
3838

exchange/docs-conceptual/disable-access-to-exchange-online-powershell.md

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: "Enable or disable access to Exchange Online PowerShell"
33
ms.author: chrisda
44
author: chrisda
55
manager: deniseb
6-
ms.date: 5/16/2024
6+
ms.date: 12/11/2024
77
ms.audience: Admin
88
audience: Admin
99
ms.topic: article
@@ -18,7 +18,7 @@ description: "Admins can learn how to disable or enable access to Exchange Onlin
1818

1919
Exchange Online PowerShell is the administrative interface that enables admins to manage the Exchange Online part of a Microsoft 365 organization from the command line (including many security features in Exchange Online Protection and Microsoft Defender for Office 365).
2020

21-
By default, all accounts in Microsoft 365 are allowed to use Exchange Online PowerShell. This access doesn't give users administrative capabilities in an organization. They're still limited by [role based access control (RBAC)](/exchange/permissions-exo/permissions-exo) (for example, they can configure settings on their own mailbox or manage distribution groups that they own, but not much else).
21+
By default, all accounts in Microsoft 365 are allowed to use Exchange Online PowerShell. This access doesn't give users administrative capabilities. They're still limited by [role based access control (RBAC)](/exchange/permissions-exo/permissions-exo). For example, they can configure some settings on their own mailbox and manage distribution groups that they own, but not much else.
2222

2323
Admins can use the procedures in this article to disable or enable a user's ability to connect to Exchange Online PowerShell.
2424

@@ -33,7 +33,7 @@ Admins can use the procedures in this article to disable or enable a user's abil
3333
- [Microsoft Entra RBAC](/microsoft-365/admin/add-users/about-admin-roles): Membership in the **Exchange Administrator** or **Global Administrator**<sup>\*</sup> roles gives users the required permissions *and* permissions for other features in Microsoft 365.
3434

3535
> [!IMPORTANT]
36-
> In your haste to quickly and globally disable PowerShell access in your cloud-based organization, beware of commands like `Get-User | Set-User -EXOModuleEnabled $false` without considering admin accounts. Use the procedures in this article to selectively remove PowerShell access, or preserve access for those who need it by using the following syntax in your global removal command: `Get-User | Where-Object {$_.UserPrincipalName -ne '[email protected]' -and $_.UserPrincipalName -ne '[email protected]'...} | Set-User -EXOModuleEnabled $false`.
36+
> In your haste to quickly and globally disable PowerShell access in your cloud-based organization, beware of commands like `Get-User | Set-User -EXOModuleEnabled $false` without considering admin accounts. Use the procedures in this article to **selectively** remove PowerShell access, or **preserve access for those who need it** by using the following syntax in your global removal command: `Get-User | Where-Object {$_.UserPrincipalName -ne '[email protected]' -and $_.UserPrincipalName -ne '[email protected]'...} | Set-User -EXOModuleEnabled $false`.
3737
>
3838
> If you accidentally lock yourself out of PowerShell access, create a new admin account in the Microsoft 365 admin center, and then use that account to give yourself PowerShell access using the procedures in this article.
3939
>
@@ -62,7 +62,7 @@ Set-User -Identity [email protected] -EXOModuleEnabled $true
6262

6363
To prevent access to Exchange Online PowerShell for a specific group of existing users, you have the following options:
6464

65-
- **Filter users based on an existing attribute**: This method assumes that the target user accounts all share a unique filterable attribute. Some attributes, such as Title, Department, address information, and telephone number, are available only from the **Get-User** cmdlet. Other attributes, such as CustomAttribute1 to CustomAttribute15, are available only from the **Get-Mailbox** cmdlet.
65+
- **Filter users based on an existing attribute**: This method assumes that the target user accounts all share a unique filterable attribute. Some attributes (for example, Title, Department, address information, and telephone number) are available only from the **Get-User** cmdlet. Other attributes (for example, CustomAttribute1 to CustomAttribute15) are available only from the **Get-Mailbox** cmdlet.
6666
- **Use a list of specific users**: After you generate the list of specific users, you can use that list to disable their access to Exchange Online PowerShell.
6767

6868
### Filter users based on an existing attribute
@@ -107,6 +107,9 @@ $NoPS | foreach {Set-User -Identity $_ -EXOModuleEnabled $false}
107107

108108
## View the Exchange Online PowerShell access status for users
109109

110+
> [!TIP]
111+
> The newer `EXOModuleEnabled` property isn't available to use with the *Filter* parameter on the **Get-User** cmdlet, but the values of the `EXOModuleEnabled` property and the older `RemotePowerShellEnabled` property are always the same, so use the `RemotePowerShellEnabled` property with the *Filter* parameter on the **Get-User** cmdlet.
112+
110113
To view the PowerShell access status for a specific user, replace \<UserIdentity\> with the name or user principal name (UPN) of the user, and run the following command:
111114

112115
```powershell
@@ -122,11 +125,11 @@ Get-User -ResultSize unlimited | Format-Table -Auto DisplayName,EXOModuleEnabled
122125
To display all users who don't have access to Exchange Online PowerShell, run the following command:
123126

124127
```powershell
125-
Get-User -ResultSize unlimited -Filter 'EXOModuleEnabled -eq $false'
128+
Get-User -ResultSize unlimited -Filter 'RemotePowerShellEnabled -eq $false'
126129
```
127130

128131
To display all users who have access to Exchange Online PowerShell, run the following command:
129132

130133
```powershell
131-
Get-User -ResultSize unlimited -Filter 'EXOModuleEnabled -eq $true'
134+
Get-User -ResultSize unlimited -Filter 'RemotePowerShellEnabled -eq $true'
132135
```

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

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: About the Exchange Online PowerShell V3 module
33
ms.author: chrisda
44
author: chrisda
55
manager: deniseb
6-
ms.date: 09/25/2024
6+
ms.date: 10/28/2024
77
ms.audience: Admin
88
audience: Admin
99
ms.topic: article
@@ -193,6 +193,9 @@ Miscellaneous Exchange Online cmdlets that happen to be in the module are listed
193193
|[Get-VivaModuleFeaturePolicy](/powershell/module/exchange/get-vivamodulefeaturepolicy)|Available in v3.2.0 or later.|
194194
|[Remove-VivaModuleFeaturePolicy](/powershell/module/exchange/remove-vivamodulefeaturepolicy)|Available in v3.2.0 or later.|
195195
|[Update-VivaModuleFeaturePolicy](/powershell/module/exchange/update-vivamodulefeaturepolicy)|Available in v3.2.0 or later.|
196+
|[Add-VivaOrgInsightsDelegatedRole](/powershell/module/exchange/add-vivaorginsightsdelegatedrole)|Available in v3.7.0-Preview1 or later.|
197+
|[Get-VivaOrgInsightsDelegatedRole](/powershell/module/exchange/get-vivaorginsightsdelegatedrole)|Available in v3.7.0-Preview1 or later.|
198+
|[Remove-VivaOrgInsightsDelegatedRole](/powershell/module/exchange/remove-vivaorginsightsdelegatedrole)|Available in v3.7.0-Preview1 or later.|
196199

197200
## Install and maintain the Exchange Online PowerShell module
198201

exchange/docs-conceptual/recipient-filters.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: "Recipient filters in Exchange PowerShell commands"
33
ms.author: chrisda
44
author: chrisda
55
manager: deniseb
6-
ms.date: 9/7/2023
6+
ms.date: 09/07/2023
77
ms.audience: ITPro
88
audience: ITPro
99
ms.topic: reference

exchange/docs-conceptual/recipientfilter-properties.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: "Filterable properties for the RecipientFilter parameter"
33
ms.author: chrisda
44
author: chrisda
55
manager: deniseb
6-
ms.date:
6+
ms.date: 09/07/2023
77
ms.audience: ITPro
88
audience: ITPro
99
ms.topic: article
@@ -120,7 +120,7 @@ The recipient properties that have been *confirmed* to work with the _RecipientF
120120
|_ExchangeUserAccountControl_|_msExchUserAccountControl_|For valid values, see [ADS_USER_FLAG_ENUM enumeration](/windows/win32/api/iads/ne-iads-ads_user_flag_enum). The integer values will work as described. Most of the text values won't work as described (even if you remove `ADS_UF` and all underscores).||
121121
|_ExchangeVersion_|_msExchVersion_|Dynamic distribution groups: String (wildcards accepted). <br> Others: `ExchangeObjectVersion` values.||
122122
|_ExpansionServer_|_msExchExpansionServerName_|String (wildcards accepted).||
123-
|_ExtensionCustomAttribute1_ to _ExtensionCustomAttribute5_|_msExchExtensionCustomAttribute1_ to _msExchExtensionCustomAttribute5_|String (wildcards accepted).||
123+
|_ExtensionCustomAttribute1_ to _ExtensionCustomAttribute5_|_msExchExtensionCustomAttribute1_ to _msExchExtensionCustomAttribute5_|String (wildcards accepted).|Currently, these attributes aren't useable as filters in Exchange Online. For more information, see [Microsoft Entra Connect Sync: Attributes synchronized to Microsoft Entra ID](/entra/identity/hybrid/connect/reference-connect-sync-attributes-synchronized).|
124124
|_ExternalDirectoryObjectId_|_msExchExternalDirectoryObjectId_|String (wildcards accepted).||
125125
|_ExternalEmailAddress_|_targetAddress_|String (wildcards accepted).|This property contains the external email address for mail contacts and mail users.|
126126
|_ExternalOofOptions_|_msExchExternalOOFOptions_|`External` (0) or `InternalOnly` (1).||
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
---
2+
external help file: Microsoft.Exchange.Management.RestApiClient.dll-Help.xml
3+
Module Name: ExchangeOnlineManagement
4+
online version: https://learn.microsoft.com/powershell/module/exchange/add-vivaorginsightsdelegatedrole
5+
title: Add-VivaOrgInsightsDelegatedRole
6+
schema: 2.0.0
7+
author: chrisda
8+
ms.author: chrisda
9+
ms.reviewer:
10+
---
11+
12+
# Add-VivaOrgInsightsDelegatedRole
13+
14+
## SYNOPSIS
15+
This cmdlet is available only in the Exchange Online PowerShell module v3.7.0-Preview1 or later. For more information, see [About the Exchange Online PowerShell module](https://aka.ms/exov3-module).
16+
17+
Use the Add-VivaOrgInsightsDelegatedRole cmdlet to add delegate access to the specified account (the delegate) so they can view organizational insights like the leader (the delegator).
18+
19+
For information about the parameter sets in the Syntax section below, see [Exchange cmdlet syntax](https://learn.microsoft.com/powershell/exchange/exchange-cmdlet-syntax).
20+
21+
## SYNTAX
22+
23+
```
24+
Add-VivaOrgInsightsDelegatedRole -Delegate <Guid> -Delegator <Guid>
25+
[-ResultSize <Unlimited>]
26+
[<CommonParameters>]
27+
```
28+
29+
## DESCRIPTION
30+
To run this cmdlet, you need to be a member of one of the following role groups in Microsoft Entra ID in the destination organization:
31+
32+
- Global Administrator
33+
- Insights Administrator
34+
35+
> [!IMPORTANT]
36+
> Microsoft recommends that you use roles with the fewest permissions. Using lower permissioned accounts helps improve security for your organization. Global Administrator is a highly privileged role that should be limited to emergency scenarios when you can't use an existing role.
37+
38+
## EXAMPLES
39+
40+
### Example 1
41+
```powershell
42+
Add-VivaOrgInsightsDelegatedRole -Delegate 5eaf7164-f36f-5381-5546-dcaa1792f077 -Delegator 043f6d38-378b-7dcd-7cd8-c1a901881fa9
43+
```
44+
45+
This example adds the organization insights viewing capability of the specified delegator account to the specified delegate account.
46+
47+
## PARAMETERS
48+
49+
### -Delegate
50+
The Delegate parameter specifies the account that can view organizational insights like the leader (the account specified by the Delegator account).
51+
52+
A valid value for this parameter is the Microsoft Entra ObjectId value of the delegate account. Use the [Get-MgUser](https://learn.microsoft.com/powershell/module/microsoft.graph.users/get-mguser) cmdlet in Microsoft Graph PowerShell to find this value.
53+
54+
```yaml
55+
Type: Guid
56+
Parameter Sets: (All)
57+
Aliases:
58+
Applicable: Exchange Online
59+
60+
Required: True
61+
Position: Named
62+
Default value: None
63+
Accept pipeline input: False
64+
Accept wildcard characters: False
65+
```
66+
67+
### -Delegator
68+
The Delegator parameter specifies the account of the leader that can view organizational insights. This capability is delegated to the account specified by the Delegate parameter.
69+
70+
A valid value for this parameter is the ObjectID value of the delegator account. Use the [Get-MgUser](https://learn.microsoft.com/powershell/module/microsoft.graph.users/get-mguser) cmdlet in Microsoft Graph PowerShell to find this value.
71+
72+
```yaml
73+
Type: Guid
74+
Parameter Sets: (All)
75+
Aliases:
76+
Applicable: Exchange Online
77+
78+
Required: True
79+
Position: Named
80+
Default value: None
81+
Accept pipeline input: False
82+
Accept wildcard characters: False
83+
```
84+
85+
### -ResultSize
86+
This parameter is reserved for internal Microsoft use.
87+
88+
```yaml
89+
Type: Unlimited
90+
Parameter Sets: (All)
91+
Aliases:
92+
Applicable: Exchange Online
93+
94+
Required: False
95+
Position: Named
96+
Default value: None
97+
Accept pipeline input: False
98+
Accept wildcard characters: False
99+
```
100+
101+
### CommonParameters
102+
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/p/?LinkID=113216).
103+
104+
## INPUTS
105+
106+
## OUTPUTS
107+
108+
## NOTES
109+
110+
## RELATED LINKS

exchange/exchange-ps/exchange/Connect-ExchangeOnline.md

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ Connect-ExchangeOnline
4444
[-Device]
4545
[-EnableErrorReporting]
4646
[-InlineCredential]
47+
[-LoadCmdletHelp]
4748
[-LogDirectoryPath <String>]
4849
[-LogLevel <LogLevel>]
4950
[-ManagedIdentity]
@@ -496,6 +497,28 @@ Accept pipeline input: False
496497
Accept wildcard characters: False
497498
```
498499

500+
### -LoadCmdletHelp
501+
**Note**: This parameter is available in version 3.7.0-Preview1 or later of the module.
502+
503+
The LoadCmdletHelp switch downloads cmdlet help files for the Get-Help cmdlet in REST API connections. You don't need to specify a value with this switch.
504+
505+
Starting in v3.7.0-Preview1, help files for the command line aren't downloaded by default. Use this switch to download the files for cmdlet help at the command line.
506+
507+
**Tip**: This parameter replaces the SkipLoadingCmdletHelp parameter. The SkipLoadingCmdletHelp parameter is no longer required and no longer works, because cmdlet help files are no longer downloaded by default.
508+
509+
```yaml
510+
Type: SwitchParameter
511+
Parameter Sets: (All)
512+
Aliases:
513+
Applicable: Exchange Online
514+
515+
Required: False
516+
Position: Named
517+
Default value: None
518+
Accept pipeline input: False
519+
Accept wildcard characters: False
520+
```
521+
499522
### -LogDirectoryPath
500523
The LogDirectoryPath parameter specifies the ___location of the log files. The default ___location is `%TMP%\EXOCmdletTelemetry\EXOCmdletTelemetry-yyyymmdd-hhmmss.csv`.
501524

@@ -678,9 +701,11 @@ Accept wildcard characters: False
678701
### -SkipLoadingCmdletHelp
679702
**Note**: This parameter is available in version 3.3.0 or later of the module.
680703

681-
The SkipLoadingCmdletHelp switch avoids downloading the cmdlet help files for REST API connections. You don't need to specify a value with this switch.
704+
In version 3.7.0-Preview1 or later, this parameter is replaced by the LoadCmdletHelp parameter. The SkipLoadingCmdletHelp parameter is no longer required and no longer does anything, because cmdlet help files are no longer downloaded by default. Eventually, this parameter will be retired, so remove it from any scripts.
705+
706+
The SkipLoadingCmdletHelp switch prevents downloading the cmdlet help files for the Get-Help cmdlet in REST API connections. You don't need to specify a value with this switch.
682707

683-
When you use this switch, you don't get local help files for any cmdlet.
708+
When you use this switch, you don't get local help files for any cmdlet at the command line.
684709

685710
This switch doesn't work with the UseRPSSession switch.
686711

@@ -698,7 +723,7 @@ Accept wildcard characters: False
698723
```
699724

700725
### -SkipLoadingFormatData
701-
The SkipLoadingFormatData switch avoids downloading the format data for REST API connections. You don't need to specify a value with this switch.
726+
The SkipLoadingFormatData switch prevents downloading the format data for REST API connections. You don't need to specify a value with this switch.
702727

703728
When you use this switch, the output of any Exchange cmdlet will be unformatted.
704729

exchange/exchange-ps/exchange/Disable-DnssecForVerifiedDomain.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@ ms.reviewer:
1414
## SYNOPSIS
1515
This cmdlet is available only in the cloud-based service.
1616

17-
**Note**: This cmdlet and the associated features are currently in Preview, aren't available in all organizations, and are subject to change.
18-
1917
Use the Disable-DnssecForVerifiedDomain cmdlet to disable Domain Name System Security (DNSSEC) for inbound mail to accepted domains in Exchange Online.
2018

2119
For information about the parameter sets in the Syntax section below, see [Exchange cmdlet syntax](https://learn.microsoft.com/powershell/exchange/exchange-cmdlet-syntax).

0 commit comments

Comments
 (0)