API资源配置

1 介绍

配置API资源时,实际上就是在访问令牌中定义了一个受众(Audience)字段,当业务系统使用这个访问令牌向受保护的API资源发送请求时,API资源会检查令牌中的Audience字段,以确保它与API资源中的标识符匹配。这样,API资源就可以确定该令牌是否是针对自己的,并相应地授权或拒绝请求。

2配置

2.1 基础配置

1、在"系统权限"页面中点击类型为"API 资源"的名称,即可进入该权限的配置页面。

2、进入配置页面后,首先进入的是"详情"页面,我们可以在该页面中配置:描述,当修改完成后,点击下方"更新"按钮,即可保存更改。

2.2 API资源配置

定义要添加到访问令牌中的"Audience"字段内容。

2.2.1 添加API资源

1、点击"API资源",进入配置页面。
图中左侧"可用资源"是创建的所有API资源,右侧"已分配资源"表示该系统权限已经使用的API资源。

2、点击"添加API资源"按钮,添加API资源。 3、当点击"添加API资源"按钮后,会弹出创建页面,更具页面要求填写名称(必填)、受众(Audience)(必填)、描述(选填)后,点击"添加"按钮即可添加完成。 4、添加完成后,新添加的API资源会出现在"可用资源"列表中。
2.2.1.1 分配API资源

1、在左侧"可用资源"列表中勾选我们想要为该系统权限分配的API资源后(支持多选),点击"分配可用资源"按钮。

2、点击"分配可用资源"按钮后,我们选中的API资源就会从"可用资源"列表中移至"已分配资源"列表中。这时该系统权限就成功分配了指定API资源。

例如:下图中表示:名为"testapi"的系统权限成功分配了名为"testapiName"的API资源。

当分配成功后,当用户登录分配了该资源的业务系统后,生成的访问令牌的aud字段中将增加我们添加的内容:
 {
  "iss": "xxx",
  "exp": xxx,
  "iat": xxx,
  "aud": [
    "AudienceName"//这里不是我们设置的"资源名称"而是我们添加API资源时设置的"受众(Audience)"的值。
  ],
  "client_id": "xxxx",
  "scope": [
    "xxxx",
    "xxxx",
    "xxx"
  ],
  "sub": "xxxx",
  "auth_time": xxxx,
  "nbf": xxx
} 
2.2.1.2 移除已分配的API资源

1、在右侧"已分配资源"列表中勾选我们想要移除的API资源后(支持多选),点击"移除已分配资源"按钮。

2、点击"移除已分配资源"按钮后,我们选中的API资源就会从"已分配资源"列表中移至"可用资源"列表中。这时该系统权限就移除了该API资源。

2.2.2 删除API资源

1、在左侧"可用资源"列表中勾选我们想要删除的API资源后(支持多选),点击右侧的蓝色按钮,然后点击"删除"字样,即可删除勾选的API资源。

上次更新: