Netwrix 1Secure 提供跨数据和身份的统一可见性——免费试用14天,享有完全访问权限。开始免费试用

资源中心博客

了解 Salesforce 中的角色、配置文件和权限集

了解 Salesforce 中的角色、配置文件和权限集

Dec 18, 2024

访问管理(Access management)可以说是 Salesforce 一线安全中最重要的组成部分之一——但它远不止于密码策略。如果你想真正做好访问管理,就需要理解角色、配置文件和权限集。若无法充分看清这些控制是如何运作的——以及它们如何影响用户在平台上可以看到和可以做的事情——你可能会面临各类安全与合规风险。

配置文件、权限集和角色之间有什么区别?

在 Salesforce 中,配置文件(profiles)和权限集(permission sets)定义用户可以做什么。另一方面,角色(Roles)定义用户可以看到什么。观看这个讲解片段,快速了解 Salesforce 的访问方式。

在继续之前,我们先把这点再稍微拆解一下。

配置文件(Profiles)权限集(permission sets) 都会控制对对象(Objects)、字段(fields)、用户设置(user settings)、选项卡设置(tab settings)、应用设置(app settings)、Apex 类访问(Apex class access)、Visualforce 页面访问(Visualforce page access)、页面布局(page layouts)、记录类型(record types)、登录时段(login hours)以及登录 IP 范围(login IP ranges)等的 CRED(创建 Create、读取 Read、编辑 Edit、删除 Delete)权限。每个用户在平台上创建时都必须被分配一个 配置文件(profile)——而且每个用户只能有一个配置文件。简单来说,用户的配置文件就是其对组织(Org)访问权限的基础授权。

权限集(Permission sets)顾名思义,权限集是一组可应用到不同配置文件的额外 CRED 权限。通常它们是按任务(task-based)划分的,并与不同的对象(Objects)和托管软件包(managed packages)相关联。例如,销售(Sales)用户可能会被分配一个权限集,使其能够访问用于生成报价(quotes)的 CPQ 应用。

用户可能会被分配多个权限集(permission sets),也可能一个都没有——这使得权限集比配置文件(profiles)拥有更动态、更灵活的权限模型。权限集的引入初衷就是可以灵活组合,并根据工作角色(job role)将不同权限集提供给不同用户。把它想象成一栋房子:权限集就像是分给同一个客人的、不同房间的钥匙。

最后但同样重要的是 Salesforce 角色。角色和共享设置通过管理对记录和文件夹的访问权限,来控制用户可以看到什么。与配置文件不同,角色是基于所需数据访问级别进行分层的。例如,从显而易见的原因来看,CEO 或部门负责人很可能需要看到比处于助理/一般员工级别的人更多的内容。

构建分层角色结构的主要好处在于:随着组织规模扩大,它能够实现可扩展性。通过对特定敏感数据实行分级访问,即使在增加人员或进行内部晋升的同时,也能继续严格控制“谁能看到什么”。

Netwrix Strongpoint for Salesforce

自动记录并监控您的 SF 访问控制

Salesforce 配置文件(Profiles)的问题

虽然配置文件是用户访问权限的基础,但它们可能会变得相当复杂。正如我们上面提到的,用户只能被分配到且仅能分配一个配置文件——但随着工作职责的时间变化,往往会通过克隆(clone)并编辑(edit)配置文件来反映组织不断演变的访问需求。

其结果是:在成熟的组织中,配置文件(profiles)往往过于频繁地由员工需求驱动,而不是由严格的安全设计来决定。用户的配置文件中保留着他们已不再需要的旧权限并不少见——随着员工在不同岗位之间流动,旧的配置文件可能会长期闲置,导致需要清理的工作量变得难以管理,并带来潜在的未授权访问风险,而这本身就可能是固有的安全风险。

从 Profiles 迁移到 Permission Sets

那么,如何管理“profiles 混乱(profile chaos)”这个问题呢?我们推荐的最佳实践——同样也是 Salesforce 的建议。——是尽可能保持 profiles 简单且严格受限,并使用 Permission Sets 来管理不同岗位职能所需访问权限的细微差别。从“profiles 混乱”的状态走向理想状态,需要一个四步流程:

  1. 确定系统中每个 profiles 的作用
  2. 比较配置文件,并提取它们之间的差异
  3. 将这些差异归类到权限集(permission sets)中
  4. 整合配置文件,并停用任何冗余项

这可能是一个难度较高的项目,尤其是在拥有大量配置文件、运行时间较长的组织(Org)中。幸运的是,确实有一些可用的免费工具可以帮助实现自动化。

最小特权原则

最小特权原则是维护组织安全的最佳方法之一——principle of least privilege 它基于这样的理念:只向个人提供完成特定工作或任务所必需的最低访问权限,而不授予更多。限制特权用户的数量是 five best practices 中的一个,这些做法由美国计算机紧急响应小组(US-CERT)下属的国家网络安全与通信集成中心(NCCIC)作为每个组织网络安全战略的一部分所推荐。

好消息是:一旦你清理了用户资料,并迁移到使用权限集,维持 principle of least privilege 就容易得多。 GearSet 建议 为几乎所有非管理员用户使用“minimum access”配置文件。

使用 Netwrix Strongpoint 实现更好的可视性

Netwrix Strongpoint 会自动记录并监控你的访问控制——同时为你提供工具,用于绘制角色、配置文件、权限集、对象(Objects)以及字段之间的关联。借助它,你可以调查谁拥有对关键对象(Objects)和字段的访问权限,开展清理(cleanup)项目,并持续跟踪用户访问的变更情况。

分享到

了解更多

关于作者

Asset Not Found

Paul Staz

销售与业务发展副总裁

作为销售与业务发展副总裁(VP),Paul 负责推动 Netwrix 旗下基础设施与应用产品的增长。他的主要关注领域是 NetSuite、Salesforce 以及网络基础设施的安全与合规。他热衷于 Go To Market Strategies,并致力于为客户带来积极的成果。此前,在 Netwrix 收购 Strongpoint 之前,Paul 曾担任 Strongpoint 的销售与市场副总裁(VP),负责运营 Go To Market 相关职能。Paul 拥有麦克马斯特大学(McMaster University,位于加拿大安大略省汉密尔顿)的文科学士学位,以及工商管理硕士学位(MBA)。