在阅读this tidbit之后,似乎当前用户的权限将无关紧要。调用此方法,任何人,但与管理员配置文件的用户然而,当,它抛出一个INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY
例外:在Salesforce Apex WebService上实施的权限
global without sharing class OpportunityTeamSales {
WebService static void AssignToSalesTeam(string userId, string opportunityId)
{
OpportunityTeamMember tm = new OpportunityTeamMember();
tm.OpportunityId = opportunityId;
tm.UserId = userId;
tm.TeamMemberRole = 'Sales Engineer';
insert tm;
}
}
事件有明确的without sharing
关键字,这似乎是强制字段级安全性/权限对象/子对象。 Opportunity
和OpportunityTeamMember being
系统对象,我们无法编辑关系。
UPDATE:
所遇到错误的用户配置文件具有读/写/修改Opportunity
对象的权限和OpportunityTeamMember
对象不会出现有特定的权限设置。我们只是试图创建一个OpportunityTeamMember
,用户具有完全权限的查找目标,但“delete”除外。
感谢您的回复 - 我更新了问题,提供了更多关于我们正在努力完成的任务以及目标用户配置文件具有哪些权限的详细信息。 – lukiffer 2012-01-31 01:40:44
给他们“自定义应用程序”确实似乎解决了这个问题,虽然这不是我们想要的。就目前而言,它回答了我的问题,我们将开始寻求更好的解决方案的其他途径。谢谢! – lukiffer 2012-02-01 16:26:31