C# OrganizationService在RetrieveMultiple请求期间引发身份验证异常
我为CRM online 2015发布了一个“同步”沙盒更新消息CRM插件,除了C# OrganizationService在RetrieveMultiple请求期间引发身份验证异常,c#,dynamics-crm-2011,dynamics-crm,C#,Dynamics Crm 2011,Dynamics Crm,我为CRM online 2015发布了一个“同步”沙盒更新消息CRM插件,除了RetrieveMultiplecall外,其他功能都正常 我已经创建了IOR组织服务 public static IOrganizationService GetOrganizationServiceByCurrentUser(this IServiceProvider serviceProvider) { var serviceFactory = serviceProvider.G
RetrieveMultiple
call外,其他功能都正常
我已经创建了IOR组织服务
public static IOrganizationService GetOrganizationServiceByCurrentUser(this IServiceProvider serviceProvider)
{
var serviceFactory = serviceProvider.GetService<IOrganizationServiceFactory>();
var context = serviceProvider.GetService<IPluginExecutionContext>();
return serviceFactory.CreateOrganizationService(context.UserId);
}
出现以下错误
在配置的服务器上找不到身份验证终结点用户名
安全令牌服务
我试着通过单元测试来做同样的事情,
CrmConnection
一切正常。看起来插件执行权限有问题。有什么想法吗?如果检索任何配置部分,则必须在系统帐户下而不是用户上下文下创建IOOrganizationService
public static IOrganizationService GetOrganizationServiceByCurrentUser(this IServiceProvider serviceProvider)
{
var serviceFactory = serviceProvider.GetService<IOrganizationServiceFactory>();
return serviceFactory.CreateOrganizationService(null);
}
公共静态IOR组织服务GetOrganizationServiceByCurrentUser(此IServiceProvider服务提供程序)
{
var serviceFactory=serviceProvider.GetService();
返回serviceFactory.CreateOrganizationService(空);
}
ADFS配置似乎存在问题:包括有关部署/环境的信息将有助于诊断问题。如果执行“organizationService.Retrieve(“systemuser”,context.InitiatingUserId,new ColumnSet(true))”,会发生什么情况;这应该会返回当前的用户信息,如果可以的话,您retrievemultiple有点奇怪,我认为这看起来有点滑稽,但可能是缺少了周围的代码:)我已经解决了这个问题,这是一个bug:)实体是一个自定义配置部分,所以我不得不在系统帐户下调用retrievemultiple
public static IOrganizationService GetOrganizationServiceByCurrentUser(this IServiceProvider serviceProvider)
{
var serviceFactory = serviceProvider.GetService<IOrganizationServiceFactory>();
return serviceFactory.CreateOrganizationService(null);
}