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