Exchange-Scripts/Docs/exchange-toolkit.md

48 lines
2.5 KiB
Markdown

# Exchange Toolkit
## How to use Exchange Toolkit
1. Download the script or clone this repository
2. Make sure the execution policy is set properly (Or run Set-ExecutionPolicy Bypass -Scope Process)
3. Run the script.
4. Follow the on-screen prompts.
> _If target is Exchange Server, run script from the Exchange Management Shell._
>
>_If target is Exchange Online, run from a PS session that has already connected to Exchange Online Management Shell._
## Exchange Toolkit Options
### 1. List contents of a .csv
Use this option to verify that your .csv file containing email addresses is formatted correctly. The output should look like:
> _Display Name_
>
> _Email Address 1_
>
> _Email Address 2_
>
> _Email Address 3_
If the email addresses are on a single line, your formatting isn't correct and the import will import all your addresses as a single email address.
### 2. Apply the contents of a .csv to the currently logged in Exchange session
Use this option to apply the email addresses when you've verified that the .csv is formatted correctly.
> ***This will apply the email addresses based on Display Name, so make sure that if display names were changed between environments, the .csv has been edited to reflect the changes.***
### 3. Create a .csv based on a search term
This option will create a .csv with the columns Displayname and EmailAddresses based on the search term given.
This uses `Get-Mailbox | Where-Object $_.EmailAddresses -like "$SearchTerm"`, so it will support wildcards.
> ***This won't give you a .csv you can apply by default, this is by design. You need to replace the spaces with ; in the EmailAddresses column. This was implemented to ensure double-checking no unwanted addresses are included into the import.***
### 4. Use the legacy search script and output the alias list to console.
This does the same as the above option, but outputs the results to console with some nice-ish formatting. This is an adaptation of search-email-addresses.
### 5. Export a series of mailboxes to .pst
This has only been tested against On-Prem Exchange.
This option will export the mailboxes found via the search term to a .pst. For some reason, Exchange requires a UNC path for the export.
### 6. Set mailbox locale based on a search term
This allows you to change a large number of mailboxes' language, time zone and date format settings in one go.
### 7. and 8.
These allow you to list all permissions for mailboxes based on a search term or export them to .csv.