为用户配置数据 RBAC
本页面介绍了数据基于角色的访问权限控制(数据 RBAC)管理员如何在 Google Security Operations 中配置数据 RBAC。通过创建和分配由标签定义的数据范围,您可以确保只有获得授权的用户才能访问数据。
数据 RBAC 依赖于 IAM 概念,包括预定义角色、自定义角色和 IAM 条件。
下面简要介绍了配置流程:
规划实现:确定要限制用户访问的不同类型的数据。确定组织中的不同角色,并确定每个角色的数据访问权限要求。
可选:创建自定义标签:创建自定义标签(除了默认标签之外)以对数据进行分类。
创建数据范围:通过组合相关标签来定义范围。
为用户分配范围:根据用户的职责,在 IAM 中为用户角色分配范围。
启用数据 RBAC:启用数据 RBAC 以应用范围分配。 您可以通过以下两种方式设置数据 RBAC:
在分配范围之前启用数据 RBAC:启用数据 RBAC 后,规则、参考列表和数据表不会分配任何范围。只有具有全局访问权限的用户才能访问数据。默认情况下,范围限定的用户无权访问任何数据。这样可以防止意外访问,并确保安全起点。如需授予访问权限,请根据您的需求定义范围,并将其分配给用户、规则和参考列表。
在分配范围后启用数据 RBAC:预先设置和分配范围可在启用数据 RBAC 后立即为用户提供数据访问权限。此外,由于规则已分配范围,因此生成的检测结果会标记范围。这样,用户就可以看到在分配范围后生成的检测结果。
准备工作
如需了解数据 RBAC 的核心概念、不同的访问类型和相应的用户角色、标签和范围的运作方式,以及数据 RBAC 对 Google SecOps 功能的影响,请参阅数据 RBAC 概览。
对 Google SecOps 实例进行初始配置。如需了解详情,请参阅对 Google Security Operations 实例进行初始配置或迁移。
确保您拥有所需的角色。
创建和管理自定义标签
自定义标签是您可以添加到 SIEM 提取的 Google SecOps 数据中的元数据,用于根据 UDM 标准化值对数据进行分类和整理。
例如,假设您要监控网络活动。您想要跟踪来自特定 IP 地址 (10.0.0.1) 的动态主机配置协议 (DHCP) 事件,因为您怀疑该 IP 地址可能已被入侵。
如需过滤和识别这些特定事件,您可以使用以下查询创建一个名为“可疑 DHCP 活动”的自定义标签:
metadata.event_type = "NETWORK_DHCP" AND principal.ip = "10.0.0.1"
自定义标签的运作方式如下:
Google SecOps 会持续将网络日志和事件提取到其 UDM 中。提取 DHCP 事件后,Google SecOps 会检查该事件是否符合自定义标签的标准。如果 metadata.event_type 字段为 NETWORK_DHCP,且 principal.ip 字段(请求 DHCP 租约的设备的 IP 地址)为 10.0.0.1,Google SecOps 会将自定义标签应用于该事件。
您可以使用“可疑 DHCP 活动”标签创建范围,并将该范围分配给相关用户。通过范围分配,您可以限制组织内特定用户或角色的这些事件的访问权限。
自定义标签要求和限制
在定义和使用自定义标签时,建议您查看以下限制和要求:
命名和语法要求
- 自定义标签名称必须是唯一的,且长度不得超过 63 个字符。名称只能包含小写字母、数字字符和连字符。删除的标签名称在删除后无法重复使用。
功能限制
自定义标签查询不支持以下高级功能:
- 参考列表
- 扩充项字段
- 数据表格
查询执行时间:自定义标签查询的执行时间上限为 5 秒。
创建自定义标签
如需创建自定义标签,请执行以下操作:
依次点击设置 > SIEM 设置 > 数据访问。
在自定义标签标签页中,点击创建自定义标签。
在 UDM 搜索窗口中,输入查询,然后点击运行搜索。
您可以优化查询,然后点击运行搜索,直到结果显示您要标记的数据。如需详细了解如何运行查询,请参阅输入 UDM 搜索。
点击创建标签。
在创建标签窗口中,选择另存为新标签,然后输入标签名称和说明。
点击创建标签。
系统会创建新的自定义标签。在数据注入期间,此标签会应用于与 UDM 查询匹配的数据。该标签不会应用于已注入的数据。
修改自定义标签
您只能修改标签说明和与标签关联的查询。标签名称无法更新。修改自定义标签后,相应更改只会应用于新数据,而不会应用于已提取的数据。
如需修改标签,请执行以下操作:
依次点击设置 > SIEM 设置 > 数据访问。
在自定义标签标签页中,点击要修改的标签旁边的 菜单,然后选择修改。
在 UDM 搜索窗口中,更新查询,然后点击运行搜索。
您可以优化查询,然后点击运行搜索,直到结果显示您要标记的数据。如需详细了解如何运行查询,请参阅输入 UDM 搜索。
点击保存更改。
自定义标签已修改。
删除自定义标签
删除标签后,新数据将无法再与该标签相关联。已与该标签相关联的数据仍会与该标签相关联。删除后,您无法恢复自定义标签,也无法再使用该标签名称创建新标签。
依次点击设置 > SIEM 设置 > 数据访问。
在自定义标签标签页中,点击要删除的标签的 菜单,然后选择删除。
点击删除。
在确认窗口中,点击确认。
自定义标签已删除。
查看自定义标签
如需查看自定义标签的详细信息,请执行以下操作:
依次点击设置 > SIEM 设置 > 数据访问。
在自定义标签标签页中,点击要修改的标签旁边的 菜单,然后选择查看。
系统会显示标签详细信息。
创建和管理范围
您可以在 Google SecOps 界面中创建和管理数据范围,然后通过 IAM 将这些范围分配给用户或群组。您可以通过应用标签来创建范围,这些标签用于定义具有相应范围的用户可以访问的数据。
创建范围
如需创建范围,请执行以下操作:
依次点击设置 > SIEM 设置 > 数据访问。
在范围标签页中,点击创建范围。
在创建新范围窗口中,执行以下操作:
输入范围名称和说明。
在使用标签定义范围访问权限 > 允许访问中,执行以下操作:
如需选择要向用户授予访问权限的标签及其对应的值,请点击允许特定标签。
在范围定义中,相同类型的标签(例如日志类型)使用 OR 运算符组合,而不同类型的标签(例如日志类型和命名空间)使用 AND 运算符组合。如需详细了解标签如何在范围内定义数据访问权限,请参阅使用允许和拒绝标签控制数据可见性。
如需授予对所有数据的访问权限,请选择允许访问所有数据。
如需排除对某些标签的访问权限,请选择排除某些标签,然后选择标签类型和相应的值,以拒绝用户访问这些标签。
如果在某个范围内应用了多个拒绝访问标签,那么只要匹配任何一个标签,系统就会拒绝访问。
点击测试范围,验证标签如何应用于范围。
在 UDM 搜索窗口中,输入查询,然后点击运行搜索。
您可以优化查询,然后点击运行搜索,直到结果显示您要标记的数据。如需详细了解如何运行查询,请参阅输入 UDM 搜索。
点击创建范围。
在创建范围窗口中,确认范围名称和说明,然后点击创建范围。
范围已创建。您必须将该范围分配给用户,才能授予他们对该范围中数据的访问权限。
修改范围
您只能修改范围说明和关联的标签。范围名称无法更新。更新范围后,与该范围关联的用户将受到新标签的限制。绑定到该范围的规则不会根据更新后的范围重新匹配。
如需修改范围,请执行以下操作:
依次点击设置 > SIEM 设置 > 数据访问。
在范围标签页上,点击要修改的范围对应的 菜单,然后选择修改。
点击 修改以修改范围说明。
在使用标签定义范围访问权限部分中,根据需要更新标签及其对应的值。
点击测试范围,验证新标签如何应用于范围。
在 UDM 搜索窗口中,输入查询,然后点击运行搜索。
您可以优化查询,然后点击运行搜索,直到结果显示您要标记的数据。如需详细了解如何运行查询,请参阅输入 UDM 搜索。
点击保存更改。
范围已修改。
删除范围
删除范围后,用户将无法访问与该范围相关联的数据。删除后,范围名称无法重复使用来创建新范围。
如需删除范围,请执行以下操作:
依次点击设置 > SIEM 设置 > 数据访问。
在范围标签页中,点击要删除的范围旁边的 菜单。
点击删除。
在确认窗口中,点击确认。
范围已删除。
查看范围
如需查看范围详情,请执行以下操作:
依次点击设置 > 数据访问权限。
在范围标签页中,点击要查看的范围对应的 菜单,然后选择查看。
系统会显示范围详细信息。
为用户分配范围
对于权限受限的用户,必须进行范围分配才能控制其数据访问权限。为用户分配特定范围可确定他们可以查看和互动的数据。如果为用户分配了多个范围,他们便可以访问所有这些范围中的组合数据。您可以为需要全局访问权限的用户分配适当的范围,以便他们可以查看和互动所有数据。如需为用户分配范围,请执行以下操作:
在 Google Cloud 控制台中,前往 IAM 页面。
选择与 Google SecOps 绑定的项目。
点击 授予访问权限。
在新的主账号字段中,执行以下操作:
如果您使用的是员工身份联合或任何其他第三方身份验证,请按如下方式添加您的主账号标识符:
principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/USER_EMAIL_ADDRESS
替换以下内容:
POOL_ID:为您的身份提供方创建的池的标识符。USER_EMAIL:用户的电子邮件地址。
如果您使用的是 Cloud Identity 或 Google Workspace,请按以下方式添加您的正文标识符:
user:USER_EMAIL
替换以下内容:
USER_EMAIL:用户的电子邮件地址。
在分配角色 > 选择角色菜单中,选择所需的角色。点击添加其他角色可添加多个角色。如需了解需要添加哪些角色,请参阅用户角色。
如需为用户分配范围,请向分配给用户的 Chronicle 受限数据访问权限角色添加条件(不适用于全局访问权限角色)。
点击 Chronicle Restricted Data Access 角色对应的添加 IAM 条件。系统随即会显示添加条件窗口。
输入条件标题和可选说明。
添加条件表达式。
您可以使用条件构建器或条件编辑器添加条件表达式。
条件构建器提供一个交互式界面,用于选择条件类型、运算符以及有关表达式的其他适用详情。借助以下运算符,您可以使用单个 IAM 条件创建精确的规则来控制对多个范围的访问权限:
ENDS_WITH:检查范围名称是否以特定字词结尾。如需匹配确切的字词,请在字词前添加
/。假设有一个名为
projects/1234/locations/us/instances/2342-434-44-3434-343434/dataAccessScopes/scopename的数据访问权限范围。ENDS_WITH /scopename与确切名称匹配,并针对示例范围评估为true。ENDS_WITH scopename匹配以“scopename”结尾的任何名称,并针对示例范围和projects/1234/locations/us/instances/2342-434-44-3434-343434/dataAccessScopes/testscopename评估为true。
STARTS_WITH:检查范围名称是否以特定字词开头。例如,
STARTS_WITH projects/project1授予对“project1”中所有范围的访问权限。EQUALS_TO:检查名称是否与特定字词或短语完全匹配。此函数仅提供对一个范围的访问权限。例如,对于示例范围,
EQUALS_TO projects/1234/locations/us/instances/2342-434-44-3434-343434/dataAccessScopes/scopename的计算结果为true。
如需向角色添加范围,我们建议您执行以下操作:
在条件类型中选择名称,在运算符中选择运算符,然后在值中输入范围名称。
/<scopename>如需分配多个范围,请使用 OR 运算符添加更多条件。您可以为每个角色绑定添加最多 12 个条件。如需添加超过 12 个条件,请创建多个角色绑定,并为每个绑定添加最多 12 个条件。
如需详细了解条件,请参阅 IAM 条件概览。
点击保存。
条件编辑器提供基于文本的界面,可使用 CEL 语法手动输入表达式。
输入以下表达式:
(scope-name: resource.name.endsWith('/SCOPENAME1') || resource.name.endsWith('/SCOPENAME2') || … || resource.name.endsWith('/SCOPENAME'))将 /SCOPENAME1、/SCOPENAME2 和其他占位符替换为您要分配给主账号的范围名称。
点击运行 Linter 以验证 CEL 语法。
点击保存。
点击测试更改,查看更改对用户数据访问权限的影响。
点击保存。
用户现在可以访问与相应范围相关联的数据。
启用数据 RBAC
启用数据 RBAC 会将所有分配的范围应用于规则和参考列表,确保用户只能看到与其范围相关的数据。如需启用数据 RBAC,请执行以下操作:
依次点击设置 > SIEM 设置 > 数据访问。
前往分配标签页,然后查看规则和参考列表的范围分配情况。如需查找特定商品,请使用过滤或搜索功能。
点击强制执行数据访问权限。“强制执行数据访问权限”窗口会显示在强制执行数据 RBAC 后将纳入范围的规则和参考列表的数量。
点击是,强制执行。
需要更多帮助?获得社区成员和 Google SecOps 专业人士的解答。