非管理员用户可以为Dynamics CRM 2011中的现有插件注册插件步骤吗?

时间:2013-01-08 20:34:46

标签: dynamics-crm-2011 dynamics-crm

在Dynamics CRM 2011内部部署安装中,我想通过SDK编写一些代码,这些代码将为已通过托管解决方案安装的插件注册插件步骤(sdkmessageprocessingstep实体)。但是,该插件以隔离/沙盒模式安装。

我知道您不能注册非沙盒插件,除非您是部署管理器,并且除非您具有系统管理员角色,否则无法注册沙盒插件。但是,该插件已经注册 - 我只想注册步骤。

有没有办法针对现有的非沙盒插件注册步骤,而用户不必处于Deployment Manager或系统管理员角色?

注意:我为CRM安全角色中的以下实体提供了用户创建,更新等权限,但这没有帮助:

  • 插件组装
  • 插件组装
  • 插件类型
  • 列表项
  • Sdk消息
  • Sdk消息处理步骤
  • Sdk消息处理步骤图像
  • Sdk消息处理步骤安全配置
  • 服务端点

我也尝试将用户添加到System Customizer角色无济于事。

目标是不必将用户添加为系统管理员,但仍然允许他们(通过SDK调用)注册插件步骤。

澄清: 在CRM服务器上,我有一个包含插件的托管解决方案。此插件设置为使用沙盒/隔离模式。托管解决方案不包含插件的任何已注册步骤。

在另一台(桌面)计算机上,我编写了一个Windows应用程序,它使用CRM SDK创建sdkmessageprocessingstep实体,以便在插件运行时进行配置。可以将此视为SDK附带的插件注册工具的替代实现,除了它注册插件本身,而只是创建与已安装的插件相关联的插件处理步骤。

1 个答案:

答案 0 :(得分:2)

经过多次尝试解决此问题并联系某些Dynamics CRM MVP后,我无法找到方法,因此我认为这回答为“不,您必须是管理员用户”。

但是,我确实找到了一种适合我的方法:我创建了一个自定义实体来存储有关应该注册原始插件的实体和步骤的信息,然后创建第二个插件来注册/取消注册基于的步骤创建,更新或删除自定义实体记录时的信息。然后,我为安装用户提供了一种机制,用于注册新插件以作为Deployment Admin用户运行。因此,作为部署管理员用户运行的第二个插件可以注册第一个插件的插件步骤和图像(这样第一个插件可以在较低优先级的用户下运行)。