码迷,mamicode.com
首页 > 其他好文 > 详细

创建一个dynamics 365 CRM online plugin (七) - plugin当中的Impersonation角色

时间:2019-04-23 21:24:19      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:line   admin   info   .com   记录   新建   person   cti   npe   

我们之前创建的plugin都是使用default的 run in User‘s Context.

理解就是使用正在登陆的security context用户信息

技术图片

 

那有个问题,如果当前用户的security role没有相应的权限访问功能,我们就要安排一个新的用户 e.g. admin来记录信息而非当前用户.

 技术图片

 

让我们在registration tool更新TaskCreate class之后再CRM中打开新建Contacts.

我们可以打开activities发现follow up 里用户更改为在plugin registration tool中更改的用户.

技术图片

 

 

第二种方法,我们可以做impersonation 的地方是plugin 的代码当中

 

首先我们把run in user‘s context 改为Calling User

 

技术图片

 

首先我们要先知道admin的GUID,知道GUID之后我们才可以创建一个新的OrganizationService. 

            // This is for the impersonation
            IOrganizationService adminService = serviceFactory.CreateOrganizationService(new Guid());

 

其次, 我们用创建好的adminService在try中做创建task.

// Inpersonation in Plugins
adminService.Create(taskRecord);

 

技术图片

 

创建一个dynamics 365 CRM online plugin (七) - plugin当中的Impersonation角色

标签:line   admin   info   .com   记录   新建   person   cti   npe   

原文地址:https://www.cnblogs.com/TheMiao/p/10753260.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!