Skip to content

Commit 8e5e4cc

Browse files
authored
Merge branch 'main' into add-note-about-country-code
2 parents 018b34e + 1f4a463 commit 8e5e4cc

File tree

717 files changed

+14372
-5810
lines changed

Some content is hidden

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

717 files changed

+14372
-5810
lines changed

.github/workflows/AutoLabelAssign.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ on:
1414
jobs:
1515
download-payload:
1616
name: Download and extract payload artifact
17+
if: github.repository_owner == 'MicrosoftDocs'
1718
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-ExtractPayload.yml@workflows-prod
1819
with:
1920
WorkflowId: ${{ github.event.workflow_run.id }}
@@ -23,6 +24,7 @@ jobs:
2324

2425
label-assign:
2526
name: Run assign and label
27+
if: github.repository_owner == 'MicrosoftDocs'
2628
needs: [download-payload]
2729
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-AutoLabelAssign.yml@workflows-prod
2830
with:
@@ -32,4 +34,4 @@ jobs:
3234
ExcludedUserList: '["user1", "user2"]'
3335
ExcludedBranchList: '["branch1", "branch2"]'
3436
secrets:
35-
AccessToken: ${{ secrets.GITHUB_TOKEN }}
37+
AccessToken: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/AutoLabelMsftContributor.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ on:
1313

1414
jobs:
1515
download-payload:
16-
if: github.repository_visibility == 'public'
16+
if: github.repository_owner == 'MicrosoftDocs' && github.repository_visibility == 'public'
1717
name: Download and extract payload artifact
1818
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-ExtractPayload.yml@workflows-prod
1919
with:
@@ -24,11 +24,12 @@ jobs:
2424

2525
label-msft:
2626
name: Label Microsoft contributors
27-
if: github.repository_visibility == 'public'
27+
if: github.repository_owner == 'MicrosoftDocs' && github.repository_visibility == 'public'
2828
needs: [download-payload]
2929
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-AutoLabelMsftContributor.yml@workflows-prod
3030
with:
3131
PayloadJson: ${{ needs.download-payload.outputs.WorkflowPayload }}
3232
secrets:
3333
AccessToken: ${{ secrets.GITHUB_TOKEN }}
34-
TeamReadAccessToken: ${{ secrets.ORG_READTEAMS_TOKEN }}
34+
ClientId: ${{ secrets.M365_APP_CLIENT_ID }}
35+
PrivateKey: ${{ secrets.M365_APP_PRIVATE_KEY }}

.github/workflows/AutoPublish.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: (Scheduled) Publish to live
2+
3+
permissions:
4+
contents: write
5+
pull-requests: write
6+
7+
on:
8+
schedule:
9+
- cron: "25 5,11,17,22 * * *" # Times are UTC based on Daylight Saving Time. Need to be adjusted for Standard Time. Scheduling at :25 to account for queuing lag.
10+
11+
workflow_dispatch:
12+
13+
jobs:
14+
15+
auto-publish:
16+
if: github.repository_owner == 'MicrosoftDocs' && contains(github.event.repository.topics, 'build')
17+
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-AutoPublish.yml@workflows-prod
18+
with:
19+
PayloadJson: ${{ toJSON(github) }}
20+
EnableAutoPublish: true
21+
22+
secrets:
23+
AccessToken: ${{ secrets.GITHUB_TOKEN }}
24+
PrivateKey: ${{ secrets.M365_APP_PRIVATE_KEY }}
25+
ClientId: ${{ secrets.M365_APP_CLIENT_ID }}

.github/workflows/BackgroundTasks.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ on:
99

1010
jobs:
1111
upload:
12+
if: github.repository_owner == 'MicrosoftDocs'
1213
runs-on: ubuntu-latest
1314

1415
steps:
@@ -23,4 +24,4 @@ jobs:
2324
- uses: actions/upload-artifact@v4
2425
with:
2526
name: PayloadJson
26-
path: pr/
27+
path: pr/

.github/workflows/BuildValidation.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: PR has no warnings or errors
2+
3+
permissions:
4+
pull-requests: write
5+
statuses: write
6+
7+
on:
8+
issue_comment:
9+
types: [created]
10+
11+
jobs:
12+
13+
build-status:
14+
if: github.repository_owner == 'MicrosoftDocs'
15+
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-BuildValidation.yml@workflows-prod
16+
with:
17+
PayloadJson: ${{ toJSON(github) }}
18+
secrets:
19+
AccessToken: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/LiveMergeCheck.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,9 @@ on:
1212
jobs:
1313

1414
live-merge:
15+
if: github.repository_owner == 'MicrosoftDocs'
1516
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-LiveMergeCheck.yml@workflows-prod
1617
with:
1718
PayloadJson: ${{ toJSON(github) }}
1819
secrets:
19-
AccessToken: ${{ secrets.GITHUB_TOKEN }}
20+
AccessToken: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/PrFileCount.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,9 @@ on:
1212
jobs:
1313

1414
file-count:
15+
if: github.repository_owner == 'MicrosoftDocs'
1516
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-PrFileCount.yml@workflows-prod
1617
with:
1718
PayloadJson: ${{ toJSON(github) }}
1819
secrets:
19-
AccessToken: ${{ secrets.GITHUB_TOKEN }}
20+
AccessToken: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/ProtectedFiles.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ on: [pull_request_target]
1010
jobs:
1111

1212
protected-files:
13+
if: github.repository_owner == 'MicrosoftDocs'
1314
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-ProtectedFiles.yml@workflows-prod
1415
with:
1516
PayloadJson: ${{ toJSON(github) }}
1617
secrets:
17-
AccessToken: ${{ secrets.GITHUB_TOKEN }}
18+
AccessToken: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/Stale.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: (Scheduled) Mark stale pull requests
2+
3+
permissions:
4+
issues: write
5+
pull-requests: write
6+
7+
on:
8+
schedule:
9+
- cron: "0 */6 * * *"
10+
workflow_dispatch:
11+
12+
jobs:
13+
stale:
14+
if: github.repository_owner == 'MicrosoftDocs'
15+
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-Stale.yml@workflows-prod
16+
with:
17+
RunDebug: false
18+
RepoVisibility: ${{ github.repository_visibility }}
19+
secrets:
20+
AccessToken: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/StaleBranch.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: (Scheduled) Stale branch removal
2+
3+
permissions:
4+
contents: write
5+
6+
on:
7+
schedule:
8+
- cron: "0 9 1 * *"
9+
10+
# workflow_dispatch:
11+
12+
13+
jobs:
14+
15+
stale-branch:
16+
if: github.repository_owner == 'MicrosoftDocs'
17+
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-StaleBranch.yml@workflows-prod
18+
with:
19+
PayloadJson: ${{ toJSON(github) }}
20+
RepoBranchSkipList: '[
21+
"ExampleBranch1",
22+
"ExampleBranch2"
23+
]'
24+
ReportOnly: false
25+
secrets:
26+
AccessToken: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/TierManagement.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Tier management
2+
3+
permissions:
4+
pull-requests: write
5+
contents: read
6+
7+
on:
8+
issue_comment:
9+
types: [created, edited]
10+
11+
jobs:
12+
13+
tier-mgmt:
14+
if: github.repository_owner == 'MicrosoftDocs' && github.repository_visibility == 'private'
15+
uses: MicrosoftDocs/microsoft-365-docs/.github/workflows/Shared-TierManagement.yml@workflows-prod
16+
with:
17+
PayloadJson: ${{ toJSON(github) }}
18+
EnableWriteSignOff: 1
19+
EnableReadOnlySignoff: 1
20+
secrets:
21+
AccessToken: ${{ secrets.GITHUB_TOKEN }}

.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
@@ -10,7 +10,7 @@ Anyone who is interested can contribute to the articles. When you contribute, yo
1010

1111
### Quickly update an article using GitHub.com
1212

13-
Contributors who make infrequent or small updates can edit the file directly on GitHub.com without installing any software. This article shows you how. [This two-minute video](https://www.microsoft.com/videoplayer/embed/RE1XQTG) also covers how to contribute.
13+
Contributors who make infrequent or small updates can edit the file directly on GitHub.com without installing any software. This article shows you how. [This two-minute video](https://learn-video.azurefd.net/vod/player?id=b5167c5a-9c69-499b-99ac-e5467882bc92) also covers how to contribute.
1414

1515
> [!TIP]
1616
> To edit an article, you need to get to it on the GitHub.com backend. If you're already on the GitHub.com page of the article, you're starting at step 4.

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 'admin1@contoso.onmicrosoft.com' -and $_.UserPrincipalName -ne 'admin2@contoso.onmicrosoft.com'...} | 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 'admin1@contoso.onmicrosoft.com' -and $_.UserPrincipalName -ne 'admin2@contoso.onmicrosoft.com'...} | 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 chris@contoso.onmicrosoft.com -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: 24 additions & 3 deletions
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: 03/26/2025
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

@@ -610,14 +613,32 @@ Unless otherwise noted, the current release of the Exchange Online PowerShell mo
610613

611614
### Current release
612615

616+
#### Version 3.7.2
617+
618+
- New _DisableWAM_ parameter on **Connect-ExchangeOnline** that disables Web Account Manager (WAM).
619+
620+
### Previous releases
621+
622+
#### Version 3.7.1
623+
624+
- Added a new property named `ExoExchangeSecurityDescriptor` to the output of **Get-EXOMailbox** that's similar to the `ExchangeSecurityDescriptor` property in the output of **Get-Mailbox**.
625+
- Added new cmdlets to support the Viva Org Insights Delegation feature:
626+
- **Add-VivaOrgInsightsDelegatedRole**
627+
- **Get-VivaOrgInsightsDelegatedRole**
628+
- **Remove-VivaOrgInsightsDelegatedRole**
629+
630+
#### Version 3.7.0
631+
632+
- Integrated Web Account Manager (WAM) in authentication flows to enhance security.
633+
- Command line help for Exchange Online PowerShell cmdlets is no longer loaded by default. Use the _LoadCmdletHelp_ parameter in the **Connect-ExchangeOnline** command so help for Exchange Online PowerShell cmdlets is available to the **Get-Help** cmdlet.
634+
- Fixed connection issues with app only authentication in Security & Compliance PowerShell.
635+
613636
#### Version 3.6.0
614637

615638
- **Get-VivaModuleFeature** now returns information about the kinds of identities that the feature supports creating policies for (for example, users, groups, or the entire tenant).
616639
- Cmdlets for Viva feature access management now handle continuous access evaluation (CAE) claim challenges.
617640
- Added fix for compatibility issue with the Microsoft.Graph module.
618641

619-
### Previous releases
620-
621642
#### Version 3.5.1
622643

623644
- Bug fixes in **Get-EXOMailboxPermission** and **Get-EXOMailbox**.

exchange/docs-conceptual/index.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ metadata:
88
description: Learn about the PowerShell environments that are available in on-premises Exchange and Microsoft 365. # Required; article description that is displayed in search results. < 160 chars.
99
services: exchange-online
1010
ms.service: exchange-online #Required; service per approved list. service slug assigned to your service by ACOM.
11-
ms.subservice: subservice # Optional; Remove if no subservice is used.
1211
ms.topic: landing-page # Required
1312
ms.assetid: 9983a964-f642-4fcd-856b-452a172bcd4e
1413
manager: deniseb

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: 1 addition & 1 deletion
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

0 commit comments

Comments
 (0)