控制对字段的访问权限
学习目标
完成本单元后,您将能够:
- 列明限制特定字段访问权限的原因。
- 查看并编辑字段级安全设置。
修改字段级安全性
控制对象级访问权限之后,为敏感字段定义字段级安全性是安全性和共享难题的第二部分。
某些情况下,您希望用户具有一个对象的访问权限,但需要限制其对该对象中个别字段的访问权限。字段级安全性设置(或字段权限)可以控制用户是否可以查看、编辑和删除对象特定字段的值。我们可以通过这些设置保护候选人的身份证号码等敏感字段,而不必隐藏候选人对象。
与页面布局只控制详细信息和编辑页面上字段的可见性不同,字段级安全性可以控制应用任意部分字段的可见性,包括相关列表、列表视图、报表和搜索结果。事实上,为了绝对确保用户不能访问特定字段,使用给定对象的字段级安全性页面限制字段访问权限具有重要意义。没有可以为特定字段提供相同级别保护的其他快捷方式。
例如,以下是适用于示例“招聘”应用程序的一些字段级安全性设置。
- 职位对象——对普通员工和面试官隐藏最低工资和最高工资。
- 候选人对象——对招聘经理和面试官隐藏身份证号码。
- 职位申请对象——使“职位”和“候选人”查找字段对招聘经理为只读。
可以通过修改简档或权限集或从“设置”中的“字段可访问性”菜单应用字段设置。
为用户设置字段级安全性后,您可以:
- 创建页面布局来组织详细信息和编辑页面上的字段。
- 通过检查字段可访问性来验证用户对字段的访问权限。
- 自定义搜索布局,设置搜索结果、查找对话框搜索结果、选项卡主页关键词列表内显示的字段。
使用简档限制字段访问权限
您可以通过修改简档或权限集来应用字段设置。让我们试一试用简档来限制用户的一般访问权限。然后,我们可以根据需要使用权限集对其进行扩展。
- 在“设置”中的“快速查找”框内输入简档,然后选择简档。
- 单击想要更改的简档名称。
- 单击对象设置,选择要更新字段设置的对象。
- 单击编辑。
- 在字段权限下,针对每个字段,指定向此类简档用户授予的访问权限类型,并保存您的设置。
如果您已经为敏感数据设置了字段级安全性,那么您可以创建页面布局来方便用户组织字段,并自定义字段在搜索结果和列表中的显示方式。对于该难题的最后一部分,请指定每个用户需要访问权限的单个记录。结合三个级别上的安全性控制,您可以建立足够灵活并且高度安全的数据访问权限模型,满足许多不同类型用户的需求。
使用权限集添加字段访问权限
接下来,我们将学习如何通过修改权限集应用字段设置。请注意,权限集用于扩展用户简档中所限制的字段访问权限。在设置自定义对象时,我们使用了“权限集”。现在,我们将返回“设置”页面,确保其中一个对象中具有用户需要的字段。
返回我们的示例“招聘”应用程序中,设置面试官在面试完 Candidate(候选人)后如何更新 Candidate(候选人)记录。(注意,由于这只是一个示例,因此您不会在组织中看到这个应用程序或 Candidate(候选人)对象。)假设面试官具有“标准用户”简档。
- 在“设置”中的“快速查找”框内输入权限集,然后选择权限集。
- 选择权限集,单击对象设置。
- 单击正在处理的对象,然后单击编辑。在本示例中,我们修改了“候选人”对象。
- 在字段权限项下,指定面试官需要的访问权限类型,然后保存该权限集。了解我们如何让面试官读取和更改 Apex 和 C# 复选框的值了吧?他们在确定候选人对这些技能的掌握情况以后,就可以勾选或取消选中这些复选框。虽然我们已经阻止他们更改 Hire By(入职日期)或招聘经理的姓名,但他们仍然可以看到这些信息。同时,由于他们无需了解职位薪酬,因此我们去除了他们对这些字段的“读取”和“编辑”权限。
- 单击管理分配,选择预计需要刚才所指定的权限的用户。单击添加分配和完成即可!
现在,您已经为敏感数据定义了字段级安全性。对于该难题的最后一部分,指定每个用户需要访问权限的单个记录。结合三个级别上的安全控制,您可以建立足够灵活并且高度安全的数据访问模型,满足许多不同类型用户的需求。
资源