7.6. 角色范围映射
在创建 OIDC 访问令牌或 SAML 断言时,用户角色映射会在令牌或断言中成为声明。应用程序使用这些声明来根据应用程序控制的资源做出访问决策。Red Hat build of Keycloak digitally 为访问令牌签名,应用程序会重复使用它们来调用远程安全的 REST 服务。但是,这些令牌有关联的风险。攻击者可以获取这些令牌,并使用其权限破坏您的网络。要防止这种情况,请使用 角色范围映射。
角色范围 映射限制访问令牌内声明的角色。当客户端请求用户身份验证时,它们收到的访问令牌仅包含为客户端范围明确指定的角色映射。结果是您可以限制每个单独访问令牌的权限,而不是向所有用户权限授予客户端访问权限。
默认情况下,每个客户端获取用户的所有角色映射。您可以查看客户端的角色映射。
流程
- 点菜单中的 Clients。
- 单击客户端以转至详细信息。
- 点 Client scopes 选项卡。
- 点击此客户端具有 Dedicated 范围和映射器的行中的链接
- 点 Scope 选项卡。
完整范围
默认情况下,范围的有效角色是域中每个声明的角色。要更改此默认行为,请将 Full Scope Allowed 改为 OFF,并声明您在每个客户端中所需的特定角色。您还可以使用 客户端范围来 为一组客户端定义相同的角色范围映射。
部分范围