有段时间没写博客了,最近忙于项目,还请见谅。
最近在做Office 365的项目,客户提出了以下需求:
现状描述:
目前用户使用2个域进行办公:1个是自己公司的域,我们假设是a.com(所有的用户PC都加入到b.com域中了),另1个域是他们总部的域a.com,此域中部署了exchange服务器,这些用户通过a.com域中的exchange进行收发邮件
需求描述:
用户想将他们在总部a.com域的邮箱全部迁移到Office 365,并最终通过他们自己的DC(域为:b.com)来进行用户管理
针对以上客户的需求,并且由于用户数量不是很多,我提出了2步走的方式进行,以下是我的具体流程:
第一步:
通过混合部署的方式或其它的迁移方式将他们的用户邮箱从总部域A.COM中迁移到Office 365(此过程网上有很多文档,我在此不做过多的说明)
第二步:
由于office 365上同步的用户(通过AAD目录同步同步的)是总部a.com域的,虽然和他们自己域b.com的用户相对应,但用户的标识还是属于2套帐户,这个时候如果在用户域环境中b.com搭建AAD目录同步,肯定不会和Office 365上的用户进行匹配。
针对以上情况,我们可以通过以下方法进行硬匹配:
-
在用户的本地域(b.com)环境中,通过命令获取所有用户的objectguid值:get-aduser -Filter * -SearchBase "ou=test,dc=b,dc=com" |fl name,objectguid
-
将这些值通过脚本转换成Office 365的ImmutableID(由于本地用户的objectguid值是和同步到office 365用户的ImmutableID值相对应的),命令如下:GUID2ImmutableID.ps1 '748b2d72-706b-42f8-8b25-82fd8733860f'
-
连接到Office 365 powershell,并通过命令将Office 365上相对应的用户的ImmutableID值修改为本地此用户转换的值Set-MsolUser -UserPrincipalName test01@b.com -ImmutableId "35jFNQU4Gkmb/9QRNCCCaA=="