5.2. 基于角色的策略


您可以使用此类策略为允许一个或多个角色访问对象的权限定义条件。

默认情况下,不会根据需要指定添加到此策略的角色,如果请求访问权限的用户被授予了任何这些角色,策略将授予访问权限。但是,如果要强制执行特定的角色,您可以根据需要指定一个特定的角色为 required。您还可以组合使用 required 和 non-required 角色,无论它们是 realm 或 client 角色。

当您需要更严格的基于角色的访问控制(RBAC)时,角色策略很有用,其中必须强制执行特定的角色才能授予对象的访问权限。例如,您可以强制用户必须同意允许客户端应用程序(代表用户代表)访问用户的资源。您可以使用红帽构建的 Keycloak 客户端范围映射来启用同意页面,甚至强制客户端在从红帽构建的 Keycloak 服务器获取访问令牌时明确提供范围。

要创建基于角色的新策略,请从策略类型列表中选择 Role

添加角色策略

Add Role Policy

5.2.1. Configuration

  • Name

    描述该策略的人类可读和唯一字符串。最佳实践是使用与您的业务和安全要求紧密相关的名称,以便您可以更轻松地识别它们。

  • 描述

    包含此策略详情的字符串。

  • realm 角色

    指定哪些 realm 角色被这个策略允许。

  • 客户端角色

    指定哪些 client 角色被这个策略允许。若要启用此字段,必须首先选择一个 客户端

  • 获取角色

    默认情况下,仅使用授权请求发送的令牌中提供的角色来检查该用户是否被授予角色。如果启用了此设置,策略将忽略来自令牌的角色,并检查与用户关联的任何角色。

  • 逻辑

    评估完其他条件后要应用的此策略逻辑。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部