4.2. 创建资源
创建资源非常简单且通用。您的主要关注点是您创建的资源的粒度。换句话说,可创建资源来表示一个或多个资源的集合,您定义资源对于管理权限至关重要。
若要创建新资源,可单击 Create resource。
添加资源
在 Red Hat build of Keycloak 中,资源定义了一组通用的、不同类型资源的信息,例如:
Name
描述此资源的人类可读和唯一字符串。
类型
唯一标识一个或多个资源集合的类型的字符串。type 是用于对不同资源实例进行分组的字符串。例如,自动创建的默认资源的默认类型是
urn:resource-server-name:resources:default
URIS
为资源提供位置/地址的 URIS。对于 HTTP 资源,URIS 通常是用于提供这些资源的相对路径。
范围
与资源关联的一个或多个范围。
4.2.1. 资源属性 复制链接链接已复制到粘贴板!
资源可能关联有属性。这些属性可用于提供有关资源的额外信息,并在评估与资源关联的权限时向策略提供额外的信息。
每个属性是一个键和值对,值可以是一个或多个字符串的集合。通过使用逗号分隔每个值,可以为一个属性定义多个值。
4.2.2. 类型的资源 复制链接链接已复制到粘贴板!
资源的 type 字段可用于将不同的资源分组在一起,以便可以使用一组通用的权限来加以保护。
4.2.3. 资源所有者 复制链接链接已复制到粘贴板!
资源也具有所有者。默认情况下,资源由资源服务器拥有。
但是,资源也可以与用户关联,因此您可以根据资源所有者创建权限。例如,只有资源所有者才可以删除或更新给定的资源。
4.2.4. 远程管理资源 复制链接链接已复制到粘贴板!
资源管理也通过 保护 API 公开,以允许资源服务器远程管理其资源。
使用保护 API 时,可以实施资源服务器来管理其用户拥有的资源。在这种情况下,您可以指定用户标识符,将资源配置为属于特定用户。
红帽构建的 Keycloak 提供资源服务器完全控制其资源。以后,我们应当能够允许用户控制自己的资源,并批准授权请求并管理权限,特别是在使用 UMA 协议时。