Salesforce Inspector是否绕过Profile与Permission Set的字段编辑权限?
Salesforce Inspector 编辑权限问题解析
核心结论
Salesforce Inspector 不会直接绕过Profile或Permission Set层面的权限,但它通过Salesforce API(REST/SOAP)操作数据,权限检查逻辑和标准UI一致,出现差异通常是权限配置有疏漏,而非工具本身豁免权限。
导致差异的常见原因
- 字段级安全(FLS)未正确锁死:Profile或Permission Set的对象级“只读”权限,不代表所有字段都被设为只读。如果目标字段的FLS仍保留“编辑”权限,API就能修改该字段,而标准UI可能因页面布局设置为只读,导致看起来权限不一致。
- 自定义Apex类权限豁免:如果Inspector调用了自定义API接口,对应的Apex类若用了
without sharing关键字,会绕过共享规则和权限检查,允许修改数据。 - Permission Set配置失误:若用的是自定义Permission Set而非系统自带的“Read-Only”模板,可能误开了字段的编辑权限。
排查与修复步骤
- 检查字段级安全(FLS)
- 进入Setup → 对象管理 → 目标对象 → 字段与关系
- 编辑需要限制的字段,在“字段级安全”区域,确认该用户的Profile和所有分配的Permission Set中,“编辑”权限已被取消(去掉勾选)。
- 验证自定义代码权限
- 检查是否有被Inspector调用的自定义Apex类,确保类声明用
with sharing关键字(强制遵守权限规则),而非without sharing。
- 检查是否有被Inspector调用的自定义Apex类,确保类声明用
- 核对Permission Set配置
- 打开分配给用户的Read-Only Permission Set,进入“对象设置”→ 目标对象,确认“编辑”权限已禁用,同时检查字段权限是否全部设为只读。
- 限制API访问(可选)
- 如果不需要用户使用任何API工具(如Data Loader、Inspector),可在用户的Profile中取消“API Enabled”权限,但此操作会影响所有API相关功能,需谨慎评估。
额外说明
标准情况下,Salesforce的API和UI会严格遵循相同的权限规则(Profile、Permission Set、FLS、共享规则等)。你遇到的差异并非工具的预期行为,而是权限配置中存在未覆盖的环节,通过上述步骤排查即可解决。
内容的提问来源于stack exchange,提问作者Brunda Yankanchi
相关产品推荐
相关产品推荐

