控制对对象的访问权限
学习目标
完成本单元后,您将能够:
- 查看现有简档,并创建新简档。
- 利用简档修改对象访问权限。
- 查看简档中所有已分配的用户。
- 创建新权限集。
- 将权限集分配给单个和多个用户。
管理对象权限
控制数据访问权限最简单的方法是针对特定类型对象设置权限。(对象是潜在客户或联系人等记录的集合)。您可以控制一组用户是否可以创建、查看、编辑或删除该对象的任何记录。
您可以使用简档或权限集设置对象权限。每个用户都会分配得到一个简档。可以为用户分配一个或多个权限集。
- 用户简档确定了他们可以访问的对象以及他们可以对任何对象记录进行的操作(如创建、读取、编辑或删除)。
- 权限集向用户授予额外的权限和访问权限设置。
使用简档授予所有特定类型用户需要的最低权限和设置。然后,根据需要使用权限集授予更多权限。同时使用简档和权限集在指定对象级访问权限时可以带来很大的灵活性。
招聘应用的对象权限
例如,让我们探讨如何在“招聘”应用中配置对象级访问权限。(注意,由于这只是一个示例,因此您不会在组织中看到这个应用!)这个应用有四大类用户:招聘经理、招聘人员、面试官和普通员工。各类用户需要哪种对象访问权限?
招聘经理
Ben 是一名招聘经理,他应该能够查看与其空缺职位相关的招聘记录,但不能查看其他招聘记录(除非这些记录属于其下属招聘经理所有)。此外,还有一些他不需要看到的敏感字段,比如身份证号码字段。让我们思考一下,Ben 对应用中每个关键自定义对象的权限。
-
职位——Ben 应该能够发布新职位,更新和查看他作为招聘经理所招聘职位的所有字段,但他应该仅能查看其他经理的职位。
-
候选人——Ben 应该仅能查看他作为招聘经理所招聘职位的候选人。此外,由于 Ben 没有理由查看候选人的身份证号码,因此,此字段应该限制他查看。
-
职位申请——Ben 需要能够更新职位申请状态,以便指定应该选择或拒绝哪些候选人。但是,他既不能更改职位申请中列出的候选人,也不能更改候选人申请的职位。因此,我们必须找到一种方法来阻止 Ben 更新职位申请中的查找字段。
-
评价——为了对候选人做出决定,Ben 需要查看面试官发布的评价。如果他认为面试官的评价存在许多偏见,他还需要对评价做出评论。同样地,Ben 也需要能够创建评价,以便记住所面试的候选人给自己留下了怎样的印象。
招聘人员
Mario 是一名招聘人员,他需要能够创建、查看和修改系统中的任何职位、候选人、职位申请或评价。此外,由于无论职位由谁创建,所有招聘人员均需要一起工作来填补该职位,因此他还需要查看和修改其他所有招聘人员拥有的招聘记录。
我们需要确保招聘人员不会意外删除候选人的信息记录。相关法律要求与招聘相关的记录要保存数年。因此,如果招聘决定受到质疑,就可以利用这些记录在法庭上进行辩护。
面试官
Melissa 是负责面试高级技术职位候选人的工程师。她应该仅能查看分配给自己进行面试的候选人和职位申请。此外,因为所有职位的最低工资和最高工资、所有候选人的身份证号码均是与 Melissa 工作无关的敏感信息,所以她不能查看这些信息。
普通员工
即使不是在职招聘经理或面试官,但像 Harry 这样的普通员工往往是招聘新员工的最佳资源。因此,我们需要确保员工可以查看空缺职位,但他们不能看到职位最低工资和最高工资字段的值,否则他们可能会透露给朋友去协商职位的最高工资数值!Harry 也不能在“招聘”应用中查看任何其他记录。
四类用户中每类用户所需权限的详情如下。
自定义对象 |
招聘人员 |
招聘经理 |
面试官 |
普通员工 |
---|---|---|---|---|
职位 |
读取 创建 编辑 |
读取 创建 编辑* |
读取(不含最低/最高工资) |
读取(不含最低/最高工资) |
候选人 |
读取 创建 编辑 |
读取*(不含身份证号码) |
读取*(不含身份证号码) |
不适用 |
职位申请 |
读取 创建 编辑 |
读取 编辑(不含查找字段) |
读取* |
不适用 |
评价 |
读取 创建 编辑 |
读取 创建 编辑 |
读取 **创建 编辑** |
不适用 |
* 仅适用于与分配给招聘经理或面试官的职位相关的记录。
** 仅适用于面试官拥有的记录。
在本模块其余部分,您将了解如何使用平台在“招聘”应用中落实这些规则。如您所见,这将需要在以下三个级别上配置安全性控制:对象、字段和记录。
使用简档限制访问权限
每个用户均有一个控制用户访问数据和功能权限的单个简档。简档是设置和权限的集合。简档设置决定用户可以看到哪些数据,权限决定用户可以对数据采取哪些操作。
- 用户简档设置决定用户是否可以看到特定的应用、选项卡、字段或记录类型。
- 用户简档中的权限决定用户是否可以创建或编辑给定类型的记录、运行报告和对应用进行自定义。
虽然简档通常与用户工作职能相匹配(例如,系统管理员、招聘人员或招聘经理),但您可以对 Salesforce 组织中的任何重要内容设置简档。一个简档可以分配给多个用户,但是一个用户一次只能有一个简档。
标准简档
平台包括一套标准简档。示例如下:
- 标准用户
- 市场营销用户
- 合同经理
- 系统管理员
- 最低访问权限 - Salesforce
每个标准简档包括平台上所有标准对象的默认权限集。例如,“标准用户”可以创建并编辑记录,而“最低访问权限 - Salesforce”用户可以查看记录,但不能创建或编辑记录。“系统管理员”简档具有最广泛的数据访问权限,并且最具配置和自定义 Salesforce 的能力。
“系统管理员”简档还包括两个特殊权限:
- 查看所有数据
- 修改所有数据
这些权限覆盖了其他所有共享设置。因此,在将这些权限分配给系统管理员以外的任何简档时,应格外小心。您可以在“设置”中查看所有标准和自定义简档的列表。
您不能在标准简档上编辑对象权限。不过,您可以复制任意现有简档,将其作为新简档的依据,并根据需要调整应用和系统设置。例如,在“招聘”应用中,您可以分别为招聘人员、面试官和招聘经理创建新简档。然后,可以配置每个简档,以便提供特定角色所需的特定类型的数据访问权限。然后,根据需要使用权限集授予其他权限。
管理简档
简档概览页面为单个简档的所有设置和权限提供了一个入口点。在“设置”中的“快速查找”框内输入简档,然后选择简档。单击想要查看的简档。
创建简档
创建简档的最简单方法是复制一个与您想要创建的简档相似的现有简档,然后进行修改。
Salesforce 拥有增强简档用户界面,可以快速找到并修改简档设置。这就是我们在本次练习中将要使用的内容。在“设置”中的“快速查找”框内输入用户管理设置,然后选择用户管理设置。启用增强简档用户界面。
- 在“设置”中的“快速查找”框内输入简档,然后选择简档。
- 找到与要创建简档相似的简档,单击旁边的复制。
- 为新简档命名,并保存。
分配简档
创建简档后,对其进行自定义,以便与一组特定用户的需求匹配,然后将简档分配给这些用户。
- 确保在“用户管理设置”中启用“增强简档用户界面”。
- 在“设置”中的“快速查找”框内输入简档,然后选择简档。
- 单击想要自定义的简档名称。
- 编辑简档,为此用户类型设置最严格的设置和权限。(请勿担心会拦截用户需要采取的操作。我们将在下面的“使用权限集授予访问权限”部分中为用户提供更多可能性。)
- 在“设置”中的“快速查找”框内输入用户,然后选择用户。
- 单击要向其分配简档的用户旁边的编辑。
- 从简档下拉列表中选择刚刚设置的简档。然后单击保存。
使用权限集授予访问权限
权限集是允许用户访问各种工具和功能的设置和权限的集合。权限集中的设置和权限也可以在简档中找到,但是权限集扩展了用户的功能访问,但未改变其简档。
权限集可便于授予对组织中各种应用和自定义对象的访问权限,也可以在不再需要的时候取消访问权限。
用户只能有一个简档,但是他们可以有多个权限集。
权限集适用于两个一般目的:授予对象或应用的访问权限,以及授予对特定字段的权限(临时或长期权限)。
授予自定义对象或应用的访问权限。
假设组织中有许多具有相同基本工作职能的用户。您可以为所有用户分配一个简档,以便授予其完成工作所需的访问权限。但其中一些用户正在从事一个特殊项目,他们需要访问一个其他人不使用的应用。此外,还有一些用户需要使用该应用,以及第一组用户不需要的另一个应用。如果我们只有简档,您就必须根据那些少数用户的需要创建更多简档,或者冒险向原始简档添加更多访问权限,允许不需要的用户也可以使用这些应用。特别是当组织正在成长,您的用户需要定期变更时,这两种选择均不理想。
授予对特定字段的权限。
假设您有一个用户 Tom,他需要在其同事休假时临时编辑某个字段。您可以创建一个授予该字段访问权限的权限集,并将该权限集分配给 Tom。当 Tom 的同事休假回来以后,Tom 不再需要访问该字段时,您仅需从 Tom 的用户记录中删除权限集分配即可。
管理权限集
权限集概览页面是权限集中所有权限的入口点。要打开权限集预览页面,在“设置”中的“快速查找”框内输入权限集,然后选择权限集。选择要查看的权限集。在每个权限集中,权限和设置组织为应用设置、系统设置、对象权限和字段权限。
创建权限集
创建权限集后,可以在现有简档权限基础上向特定用户授予其他权限,无需修改现有简档、创建新简档或授予管理员简档。
- 在“设置”中的“快速查找”框内输入权限集,然后选择权限集。
- 找到要复制的权限集,单击旁边的复制。复制的权限集与原权限集具有相同的用户许可证。单击新建 (1),可以创建具有不同许可证的权限集。
- 输入标签和描述。API 名称是 API 和受管软件包使用的唯一名称。它会自动复制标签,但您可以进行修改。
- 如果这是一个新建权限集,选择用户许可证选项。
- 如果计划将此权限集分配给具有不同许可证的多个用户,选择“--无--”。
- 如果只有一种许可证类型的用户将使用此权限集,选择此用户许可证。
- 单击保存返回权限集概览页面。
- 在权限集工具栏中,单击管理分配,然后单击添加分配。
- 选择要分配给此权限集的用户,单击分配。查看“分配摘要”页面上的消息。如果没有分配给任何用户,“消息”列会提示原因。
- 单击完成返回至分配到此权限集的用户列表。
招聘应用的简档和权限集
现在您已经了解如何创建和修改简档和权限集,下面将为示例“招聘”应用程序设置合适的对象级访问权限。这个应用有四大类用户:招聘人员、招聘经理、面试官和普通员工。
以下是决定为每类用户创建简档还是权限集的关键注意事项。
招聘人员
招聘人员代表了明确定义的工作职能,他们需要访问与其他用户不同的数据类型。因此,有必要为招聘人员创建简档。
招聘经理
对于大多数组织而言,销售部门的招聘经理需要访问的数据类型与工程部门的招聘经理需要访问的数据类型不同。然而,所有招聘经理仍然需要相同类型招聘数据(评价、候选人、职位和职位申请)的访问权限。为方便起见,可以创建一个可以分配给各种类型用户的招聘经理权限集。
面试官
所有部门和所有工作职能的员工均可能受邀参加面试,并且只需要在有限的时间内访问招聘信息。由于可以根据需要轻松分配和撤销权限,因此有必要为面试官定义权限集。
普通员工
这是一个不反映特定工作职能的普通群体。对于大多数员工而言,您可以创建一个基本简档,提供一个小数据集的访问权限,然后根据员工的特性,创建和分配权限集,以便根据需要向员工授予更多访问权限。
根据经验,为“招聘”应用配置对象权限的最佳方法如下:
- 创建两个简档:“招聘人员”和“普通员工”。
- 创建两个权限集:“招聘经理”和“面试官”。
- 将“普通员工”简档分配给招聘经理和面试官,然后授予与其职能相匹配的权限集。
资源