当您更改用户的 sAMAccountName 时,如何使 SharePoint 重新同步?

当您更改用户的 sAMAccountName 时,如何使 SharePoint 重新同步?

我在 SharePoint 2010 上观察到,如果在用户登录 SharePoint 网站集后更改用户的 sAMAccountName,则 UserInfo 表中的 tp_Login 字段不会更新。它仍具有旧的用户 ID。

虽然用户可以用新帐户登录 SharePoint,但这些新登录不会更新表格。我有查看 SPUser.LoginName 的代码,该值似乎是 tp_Login 字段值,该值现已过时。该值过时这一事实导致我的代码失败。

我怀疑这种行为在 SharePoint 2007 中是相同的。

有什么方法可以强制 SharePoint 识别新的 sAMAccountName?我怀疑配置文件同步可能会有所帮助,但我希望我的解决方案能够与 WSS 3.0 和 SharePoint 2010 Foundation 一起使用。

我考虑过手动更新数据库表,但我想坚持使用支持的方法。

答案1

这应该可以帮你解决问题。它必须以 SharePoint 管理员身份运行。过去我发现这并非在所有情况下都有效,有时 SharePoint 开发团队必须手动修复用户。

stsadm.exe -o 迁移用户 -oldlogin -newlogin [-ignoresidhistory]

答案2

当我尝试以下命令时

stsadm.exe -o migrationuser -oldlogin 域名\旧用户名 -newlogin 域名\新用户名 –ignoresidhistory

我收到了同样的错误:

“值不能为空。参数名称:userProfileApplicationProxy”

但是,如果我忽略该错误并进行测试,它就会成功。

相关内容