This week, while prepping two different customers for single-signon to Office 365, I ran into the same issue--the userPrincipalName attribute was correctly populated (username@domain.com), but the email address was blank. So, to rectify this problem, I put together a script that reads the UPN attribute and then copies to the the mail attribute.
Leave me a comment if you find it useful!
# Populate "mail" attribute with UPN
Import-Module ActiveDirectory
Get-ADUser -LDAPFilter '(userPrincipalName=*)' `
-Properties userPrincipalName,mail | Select-Object * | `
ForEach-Object { Set-ADObject -Identity `
$_.DistinguishedName -Replace `
@{mail=$($_.userPrincipalName)} }
Worked great for me! Awesome, thanks for sharing this!
ReplyDelete