Skip to content

Commit 68cc263

Browse files
authored
v3.0.0 (#24)
## <a href="https://github.com/GruberMarkus/Export-RecipientPermissions/releases/tag/v3.0.0" target="_blank">v3.0.0</a> - 2023-01-13 _**Breaking:** Microsoft removes support for Remote PowerShell connections to Exchange Online starting June 1, 2023. See https://techcommunity.microsoft.com/t5/exchange-team-blog/announcing-deprecation-of-remote-powershell-rps-protocol-in/ba-p/3695597 for details. Export-RecipientPermissions no longer uses Remote PowerShell to connect to Exchange Online and to Exchange on-premises. This brings some possibly breaking changes, which are detailed in the following release notes._ ### Changed - **Breaking:** Switching from Remote PowerShell session to local PowerShell session due Microsoft disabling Remote PowerShell in Exchange Online - Export-RecipientPermission will require more local resources (CPU, RAM, network) and will take longer to complete because operations previously handled on the server side now need to be handled on the client side - The variables '`$Grantor`' and '`$Trustee`' lose some sub attributes, so you may have to adopt your '`GrantorFilter`' and '`TrusteeFilter`' code: - '`.RecipientType.Value`' is now '`.RecipientType`' - '`.RecipientTypeDetails.Value`' is now '`.RecipientTypeDetails`' - '`.PrimarySmtpAddress`' no longer has the sub attributes .Local, .Domain and .Address - All the data formerly held in the sub attributes is still there, as .PrimarySmtpAddress is in the 'local@domain' format - '`.EmailAddresses`' (an array) no longer has the sub attributes .PrefixString, .IsPrimaryAddress, .SmtpAddress and .ProxyAddressString - All the data formerly held in the sub attributes is still there, as .EmailAddress is in the 'prefix:local@domain' format - On-prem only: - '`.Identity`' is now the canonical name (CN) only and no longer has the sub attributes .DomainId and .Parent - All the data formerly held in the sub attributes is still there, as .Identity is in the 'example.com/OU1/OU2/ObjectA' format - Reduced the default value of '`ParallelJobsExchange`' from '`$ExchangeConnectionUriList.count * 3`' to '`$ExchangeConnectionUriList.count`' as local Exchange PowerShell sessions are not as stable as Remote PowerShell sessions - Adopted sample code and documentation to reflect changes in the '`$Grantor`' and '`$Trustee`' variables - Use Get-EXO* cmdlets in Exchange Online where possible - Upgrade to ExchangeOnlineManagement v3.1.0 ### Added - New export parameters: '`ExportModerators`', '`ExportRequireAllSendersAreAuthenticated`', '`ExportAcceptMessagesOnlyFrom`', '`ExportResourceDelegates`'. See '`README`' for details. - New FAQ in '`README`': 'I receive an error message when connecting to Exchange on premises' ### Fixed - When importing UserFriendlyNames, errors were not written to the error file because of a missing encoding variable - Only the first ManagedBy entry for reach recipient was exported correctly, the following entries were missing trustee data
1 parent 2b92fa3 commit 68cc263

File tree

43 files changed

+6541
-3167
lines changed

Some content is hidden

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

43 files changed

+6541
-3167
lines changed

docs/CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,34 @@
1515
### Fixed
1616
-->
1717

18+
19+
## <a href="https://github.com/GruberMarkus/Export-RecipientPermissions/releases/tag/v3.0.0" target="_blank">v3.0.0</a> - 2023-01-13
20+
_**Breaking:** Microsoft removes support for Remote PowerShell connections to Exchange Online starting June 1, 2023. See https://techcommunity.microsoft.com/t5/exchange-team-blog/announcing-deprecation-of-remote-powershell-rps-protocol-in/ba-p/3695597 for details.
21+
Export-RecipientPermissions no longer uses Remote PowerShell to connect to Exchange Online and to Exchange on-premises. This brings some possibly breaking changes, which are detailed in the following release notes._
22+
### Changed
23+
- **Breaking:** Switching from Remote PowerShell session to local PowerShell session due Microsoft disabling Remote PowerShell in Exchange Online
24+
- Export-RecipientPermission will require more local resources (CPU, RAM, network) and will take longer to complete because operations previously handled on the server side now need to be handled on the client side
25+
- The variables '`$Grantor`' and '`$Trustee`' lose some sub attributes, so you may have to adopt your '`GrantorFilter`' and '`TrusteeFilter`' code:
26+
- '`.RecipientType.Value`' is now '`.RecipientType`'
27+
- '`.RecipientTypeDetails.Value`' is now '`.RecipientTypeDetails`'
28+
- '`.PrimarySmtpAddress`' no longer has the sub attributes .Local, .Domain and .Address
29+
- All the data formerly held in the sub attributes is still there, as .PrimarySmtpAddress is in the 'local@domain' format
30+
- '`.EmailAddresses`' (an array) no longer has the sub attributes .PrefixString, .IsPrimaryAddress, .SmtpAddress and .ProxyAddressString
31+
- All the data formerly held in the sub attributes is still there, as .EmailAddress is in the 'prefix:local@domain' format
32+
- On-prem only:
33+
- '`.Identity`' is now the canonical name (CN) only and no longer has the sub attributes .DomainId and .Parent
34+
- All the data formerly held in the sub attributes is still there, as .Identity is in the 'example.com/OU1/OU2/ObjectA' format
35+
- Reduced the default value of '`ParallelJobsExchange`' from '`$ExchangeConnectionUriList.count * 3`' to '`$ExchangeConnectionUriList.count`' as local Exchange PowerShell sessions are not as stable as Remote PowerShell sessions
36+
- Adopted sample code and documentation to reflect changes in the '`$Grantor`' and '`$Trustee`' variables
37+
- Use Get-EXO* cmdlets in Exchange Online where possible
38+
- Upgrade to ExchangeOnlineManagement v3.1.0
39+
### Added
40+
- New export parameters: '`ExportModerators`', '`ExportRequireAllSendersAreAuthenticated`', '`ExportAcceptMessagesOnlyFrom`', '`ExportResourceDelegates`'. See '`README`' for details.
41+
- New FAQ in '`README`': 'I receive an error message when connecting to Exchange on premises'
42+
### Fixed
43+
- When importing UserFriendlyNames, errors were not written to the error file because of a missing encoding variable
44+
- Only the first ManagedBy entry for reach recipient was exported correctly, the following entries were missing trustee data
45+
1846
## <a href="https://github.com/GruberMarkus/Export-RecipientPermissions/releases/tag/v2.3.1" target="_blank">v2.3.1</a> - 2022-11-28
1947
### Added
2048
- New FAQ in '`README`': 'How to export permissions for specific public folders?'

docs/CONTRIBUTING.md

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@ I'm not a professional developer - if you are one and you notice something negat
1313
- [2. Contribution opportunities](#2-contribution-opportunities)
1414
- [2.1. Sponsoring](#21-sponsoring)
1515
- [2.2. Code refactoring](#22-code-refactoring)
16-
- [2.3. Combine on-prem and cloud results](#23-combine-on-prem-and-cloud-results)
17-
- [2.4. Adopt Exchange Online connection method](#24-adopt-exchange-online-connection-method)
1816
- [3. Branches](#3-branches)
1917
- [4. Development process](#4-development-process)
2018
- [5. Commit messages](#5-commit-messages)
@@ -37,16 +35,6 @@ Dear businesses, please don't forget:
3735
I'm not a professional developer, but a hobbyist scripter, and the code looks like that.
3836

3937
There are optimization opportunities in error handling, de-duplicating code with functions, applying PowerShell best practices, and more.
40-
## 2.3. Combine on-prem and cloud results
41-
Currently, Export-RecipientPermissions connects either to an on-prem instance or a cloud instance of Exchange.
42-
43-
A future release will be able to connect to both environments and combine these two data sources.
44-
## 2.4. Adopt Exchange Online connection method
45-
The script still connects to Exchange Online by using the classic New-PSSession construct.
46-
47-
Connect-ExchangeOnline clearly is the future. Unfortunately, it's connections to Exchange Online have shown to be error prone when used in parallel jobs, even for small environments.
48-
49-
As soon as these problems are solved, Export-RecipientPermissions will switch to Connect-ExchangeOnline.
5038
# 3. Branches
5139
The default branch is named '`main`'. It contains the source of the latest stable release.
5240

0 commit comments

Comments
 (0)