摘要: 本人微信公众号:微软动态CRM专家罗勇 ,回复287或者20181128可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me 。
创建用户的时候如果用来登录的用户名已经存在的话会提示:您正在尝试使用已由其他用户使用的域登录来创建用户。请选择其他的域登录,然后重试。
英文版本提示是:You are attempting to create a user with a domain logon that is already used by another user. Select another domain logon and try again.
这个一般情况下选择其他的域登录就可以,如果非要用这个用户名,找出来这个用户名修改就可以。
但是在万一的情况下你可能会碰到有这个提示,但是找不到这个用户,咋回事呢?我猜测是有人直接操作数据库从SystemUserBase表中直接删除了这个用户,这个是很危险的。
我们知道Dynamics CRM的用户是不能删除的,可以禁用。
碰到这种情况怎么办?我找到一个办法,思路来自这个文章: Authentication when you are adding a new user to CRM, or a user to a new Organization in CRM
但是这个方法是不受支持的开发方法,一般不要在生产环境操作,谨记。
这里假设出问题的账号是 luoyong@luoyong.me ,该域账号的objectSid 可以通过如下方法查看。
执行如下SQL来处理,如果不是使用LIKE操作符号的话,objectSid前面要加上 W:
Delete from MSCRM_CONFIG.dbo.SystemUserOrganizations where UserId=(select userid from MSCRM_CONFIG.dbo.SystemUserAuthenticatio where AuthInfo like <%W:objectSid%>) delete from MSCRM_CONFIG.dbo.SystemUserAuthenticatio where AuthInfo like <%W:objectSid%>
这样处理后还需对CRM的应用程序池执行下Recycle,当然IIS重启也是可以的,切记这个步骤不可少,否则还是同样的错误。