Sql Dynamics CRM访问检查流

Sql Dynamics CRM访问检查流,sql,dynamics-crm-2011,Sql,Dynamics Crm 2011,我正在尝试了解Microsoft是如何在Dynamics CRM中构建访问检查流的。检查的顺序是什么(安全角色、团队、共享)?原因是我参加了一个项目,在这个项目中,他们根据一些标准创建了与团队共享一个实体的所有记录的逻辑。所有用户都是此团队的成员。现在,POA表中有很多关于这个实体的记录,如果不是由具有管理员权限的用户运行,我的一个查询就会超时 我想知道,如果这个团队是记录的所有者而不是与团队共享记录,是否会更有效率?在运行POA表之前,CRM会检查用户在团队中的成员资格吗 提前感谢。根据您的描

我正在尝试了解Microsoft是如何在Dynamics CRM中构建访问检查流的。检查的顺序是什么(安全角色、团队、共享)?原因是我参加了一个项目,在这个项目中,他们根据一些标准创建了与团队共享一个实体的所有记录的逻辑。所有用户都是此团队的成员。现在,POA表中有很多关于这个实体的记录,如果不是由具有管理员权限的用户运行,我的一个查询就会超时

我想知道,如果这个团队是记录的所有者而不是与团队共享记录,是否会更有效率?在运行POA表之前,CRM会检查用户在团队中的成员资格吗


提前感谢。

根据您的描述,我假设:

  • 某些实体的所有记录(称为新实体)都共享给一个特定的团队(称为TeamA)

  • 所有用户都是TeamA的成员

  • 他们可以通过向所有用户提供所需的对所讨论的实体类型的权限,完全消除共享和团队成员资格


    让每个人都成为团队的一员肯定比与团队分享更有效,因为这将在很大程度上消除POA表。也就是说,POA表有多大?POA曾经是一个问题,但在这一点上,如果它们是最新的汇总,则大多数POA问题都是由于SQL server上的错误查询、缺少索引或磁盘/内存配置不佳造成的。

    感谢您的回答,并对这么晚的响应表示抱歉。POA表包含与此新实体相关的近1500000条记录。大多数新的_实体记录共享给该团队,其他记录不共享,不应提供给所有用户。您是否建议将所有这些记录分配给团队而不是共享?我是否必须删除共享(假设可以通过代码完成)?在那之后我如何清理POA?POA中150万条记录不应该成为问题。我认为您需要查看SQL Server的性能(特别是索引策略)。您的汇总是什么?您可以共享性能较差的查询吗?我没有要共享的特定查询,但sql server在虚拟机上存在性能问题,磁盘是SAN的一部分。。。但我只是想知道,如果将记录分配给他们的团队(将团队设置为所有者),而不是与同一团队共享,那么团队成员是否会体验到更好的绩效?CRM是否会执行更轻量级的查询来确定用户是否具有权限?一个用户将成为多少个团队的成员?最大值、最小值和平均值。我正在处理一个类似的问题,如果团队成员人数超过2000或5000人,您将开始遇到性能问题。据报道,它们在汇总16中得到了解决,但我们仍在测试中。不,不超过10个团队。所以我认为这不会有太大的区别。但是今天我们的数据库管理员发现了奇怪的行为。如果不在business unit on top中的用户搜索联系人(例如在查找视图中),CRM将从数据库中获取所有联系人并与POA表匹配。用户拥有一个组织。在联系人上设置级别读取访问权限。由于用户处于top BU和相同的安全角色,所以不会查询POA,只返回了几个联系人。这可能是什么原因?