代码改变世界

SharePoint 2007 做Migration后用户处理

2011-05-04 10:43 努力学习的小熊 阅读(...) 评论(...) 编辑 收藏

        新公司的一部分任务是做Migration,从用户角度来说分为两种情况,第一种是在同一个Domain下作网站的Migration,另外一种就是在不同Domain下做Migration。

        在同一Domain下做Migration,User不会出现问题,因为在Import后,新网站里面User在AD里面的标识SID是没有变化的,所以可以从新网站所在的Domain下认证出这个User,是合法用户。

        在不同的Domain下做Migration时问题就来了,除非连AD一起做Migration,而且个人觉得最好是系统镜像这么做,全部原封不动的带过去(个人觉得理论上AD在Migration过去之后,也是原来的内容,每个User的SID不会变化,应该木有问题,这个以后再做试验)。如果不同时迁移AD,那么就会出现问题,因为负责AD的人往往不管其他系统,可能只做简单的Export和Import,而不是AD的Backup和Restore,这时,Import做完后,每个用户的SID都会发生变化。举个例子,DomainA和DomainB里面同样的账号(域名相同,不同肯定是不认识了)domain\bearstudyhard,DomainA认识,但是DomainB就不能认证它。SharePoint 2007的stsadm工具提供了一个migrateuser操作。

        stsadm -o migrateuser -oldlogin <Domain\name> -newlogin <Domain\name> -[ignoresidhistory]

        运行后,即使不同域名的不同账号名,也能进行这种认证。

        这里有个参考文档,说的更详细,可以参考这里:A few notes about STSADM –o migrateuser