用户授权
编辑用户授权编辑
Elastic Stack 安全功能添加了授权,它是确定传入请求背后的用户是否被允许执行该请求的过程。
此过程在用户成功识别并身份验证后进行。
基于角色的访问控制编辑
安全功能提供基于角色的访问控制 (RBAC) 机制,使您能够通过将权限分配给角色并将角色分配给用户或组来授权用户。
授权过程围绕以下结构进行
- 受保护的资源
- 访问受限的资源。索引、别名、文档、字段、用户和 Elasticsearch 集群本身都是受保护对象的示例。
- 权限
- 用户可以对受保护资源执行的一个或多个操作的命名组。每个受保护资源都有自己的一组可用权限。例如,
read
是一个索引权限,它表示所有允许读取索引/存储数据的操作。有关可用权限的完整列表,请参阅安全权限。 - 许可
-
对受保护资源的一个或多个权限的集合。权限可以很容易地用文字描述,以下是一些示例
-
read
权限在products
数据流或索引上 -
manage
权限在集群上 -
run_as
权限在john
用户上 -
read
权限在与查询 X 匹配的文档上 -
read
权限在credit_card
字段上
-
- 角色
- 一组命名许可
- 用户
- 已验证的用户。
- 组
- 用户所属的一个或多个组。某些领域(如本机、文件或 PKI 领域)不支持组。
角色具有唯一的名称,并标识一组权限,这些权限转换为对资源的权限。您可以将用户或组与任意数量的角色关联。当您将角色映射到组时,该组中用户的角色是分配给该组的角色和分配给该用户的角色的组合。同样,用户拥有的全部权限集由其所有角色中权限的并集定义。
将角色分配给用户的方法取决于您用于验证用户的领域。有关更多信息,请参阅将用户和组映射到角色。
基于属性的访问控制编辑
安全功能还提供基于属性的访问控制 (ABAC) 机制,使您能够使用属性来限制对搜索查询和聚合中文档的访问。例如,您可以将属性分配给用户和文档,然后在角色定义中实施访问策略。具有该角色的用户只有在具有所有必需属性的情况下才能读取特定文档。
有关更多信息,请参阅使用 X-Pack 6.1 的文档级基于属性的访问控制。