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