Our company is moving from the legacy address format of first initial plus surname at domain.net—for example, [email protected]—to a newer format using firstname.lastname at domain2.co.uk, such as [email protected]. I need to add the new-format address as an alias for several hundred existing users while keeping their current addresses. What is the safest way to generate, validate, and apply these aliases with PowerShell?
4 Answers
Before writing the bulk command, clarify what has already been attempted and test the process on a few non-production users. Exporting the current values first gives you a rollback reference and makes it much easier to catch unexpected results.
The actual update is fairly simple, but name uniqueness is the important part. Two users may share the same first and last name, or an alias may already belong to another account. Build validation into the process and test with a couple of accounts before running it against everyone.
The right solution depends on the mail setup. If there is still an on-premises Exchange server, an email address policy may be able to create the aliases automatically. In a hybrid environment, update the directory or Exchange-managed attributes in the appropriate location rather than changing only the cloud mailbox. A fully cloud-managed setup would use a different PowerShell command set.
A safe approach is to export the target users to CSV, generate the proposed [email protected] addresses, and review the file before making changes. Check for duplicate names, existing proxy addresses, missing names, and formatting issues. Once the data looks correct, use the approved CSV as the input for the update script.

Related Questions
Can't Load PhpMyadmin On After Server Update
Redirect www to non-www in Apache Conf
How To Check If Your SSL Cert Is SHA 1
Windows TrackPad Gestures