Dynamics crm 2011 插件中的AddMembersTeamRequest-权限延迟

Dynamics crm 2011 插件中的AddMembersTeamRequest-权限延迟,dynamics-crm-2011,dynamics-crm,Dynamics Crm 2011,Dynamics Crm,这是使用SQL 2008 R2的Dynamics CRM 2011内部部署汇总11 我们正在尝试调试以下场景: 在同步后创建插件中,我们将用户添加到拥有特定记录并通过安全角色对该记录拥有读取权限的团队中。这意味着当创建过程完成时,添加到团队中的用户可以访问记录。当这样的用户打开记录时,会出现SecurityException ReadAccess错误。该记录以网格形式显示,如果他们没有对该记录的读取权限,则不应出现这种情况 作为进一步的测试,我们从控制台应用程序为用户和记录执行SDK调用Retr

这是使用SQL 2008 R2的Dynamics CRM 2011内部部署汇总11

我们正在尝试调试以下场景:

在同步后创建插件中,我们将用户添加到拥有特定记录并通过安全角色对该记录拥有读取权限的团队中。这意味着当创建过程完成时,添加到团队中的用户可以访问记录。当这样的用户打开记录时,会出现SecurityException ReadAccess错误。该记录以网格形式显示,如果他们没有对该记录的读取权限,则不应出现这种情况

作为进一步的测试,我们从控制台应用程序为用户和记录执行SDK调用RetrievePrincipalAccessRequest,并查看用户是否没有读取权限

我们可以在UI中查看团队成员列表,用户是团队的成员。如果我们等待足够长的时间(并创建另一个记录,问题最终会自行解决——几分钟后)

我们可以使用我们在插件中执行的相同代码(但在控制台应用程序中运行)将用户添加到团队中,并且用户具有读取权限,可以在调用完成后立即访问记录

我们的插件中显然存在导致问题的问题,但我们无法找出原因,因为Create调用完成时没有错误,我们可以在UI中看到列出的用户。我们没有做任何令人不安的事情,例如,直接SQL、外部服务等

我们调用一个标准的CRM 2011 SDK消息,它完成时不会抛出错误。我们可以验证用户是否已添加到用户界面中。用户有权读取实体,但他们没有

有什么想法/想法吗??我们一直在疯狂地追踪,但还没有找到我们的烟枪

更新


如果在插件代码中暂停,我们可以降低发生率。此错误仅在插件期间完成添加时发生,而不是在插件外部完成添加时发生。我开始怀疑是否有一个SQL过程/语句(当用户添加到团队中时会触发三个存储过程)由于某种原因被截断或无法完成,因为添加在插件代码中未完成时是成功的。

最终在汇总18()解决的项列表中找到了答案

如果您是通过插件分配团队成员,则用户缓存会执行此操作 未失效,在尝试检索时导致错误 记录。如果团队具有安全角色和访问权限,则会发生此问题 通过团队所有权控制权限

大约两个月前,我们与微软签订了一份协议,其中涉及了很多来回的问题,但没有一个最终的解决方案


因此,如果您在CRM 2011上遇到同样的问题,您需要更新到汇总18。

我想知道用户的某些凭据是否缓存在CRM Web服务器上。尝试访问记录时,您是否与用户一起登录?我会尝试授予权限,然后登录并查看它是否有效,以及它与Crm Web服务器上的主动缓存有多大关系。