一个联系人的名称错了,导致同一个域中用户收到邮件时看到的信息是错的,在web管理界面中修改联系人名称后,用户outlook中的全球地址薄信息已经更新,但是离线地址薄中的信息还是没有更新,即使用户在outlook中不停下载更新离线地址簿也没有效果。
问题肯定出在服务器端的离线地址薄没有更新,于是尝试Powershell去更新。
$UserCredential = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session
1. Assign the AddressList Management role
在用Powershell更新之前,需要登录web管理页面,将Addresslist 管理角色赋予你要登录的用户 XXXX@domain.com,默认情况即使是全局管理员也没有这个权限
2.Connect-ExchangeOnline -UserPrincipalName admin@domain.com
结果出错The term 'Connect-ExchangeOnline' is not recognized as the name of a cmdlet,我电脑没有安装这个模块
3.installation
Install-Module -Name ExchangeOnlineManagement;
Import-Module -Name ExchangeOnlineManagement
4.get-addresslist
Set-AddressList -Identity "Offline Global Address List"
Set-AddressList -Identity "All Contacts"
Set-AddressList -Identity "All Users"
5.Update-OfflineAddressBook
The term 'Update-OfflineAddressBook' is not recognized as the name of a cmdlet
根本没有更新的命令,你只可以新建,比如:
6.New-OfflineAddressBook -Name "NewOAB" -AddressLists "\Default Global Address List"
但是新建解决不了问题,因为用户端的那个离线地址薄的信息还是不对的,按微软的说法:GAL 可能需要 24 到 48 小时才能更新 OAB,所以除了耐心等待别无他法。
过了两天,问题果然自动解决了。
注:GAL--Global Address List OAB---- Offline Address Book