12.4.2. 将 RH-SSO 配置为具有 3scale 客户端
在 OpenShift RH-SSO 仪表板中,将 RH-SSO 配置为具有 3scale 客户端。这是一个特殊的管理客户端。每次 API 消费者在 Developer Portal 中订阅 API 时,3scale 使用您在此流程中创建的 RH-SSO 管理客户端来为 API 使用者应用程序创建客户端。
步骤
- 在 RH-SSO 控制台中,为 3scale 客户端创建域,或选择包含 3scale 客户端的现有域。https://access.redhat.com/documentation/en-us/red_hat_single_sign-on/7.5/html/getting_started_guide/creating-first-realm_
- 在新的或选定域中,单击左侧导航面板中的 Clients。
- 单击 Create 以创建新客户端。
-
在 Client ID 字段中,指定一个有助于将这个客户端识别为 3scale 客户端的名称,如
oidc-issuer-for-3scale。 -
将 Client Protocol 字段设置为
openid-connect。 - 保存新客户端。
在新客户端的设置中,设置以下内容:
-
Access Type 为
confidential。 -
Standard Flow Enabled 为
OFF。 -
Direct Access Grants Enabled 为
OFF。 Service Accounts Enabled 为
ON。此设置可让此客户端发布服务帐户。- 点 Save。
-
Access Type 为
为客户端设置服务帐户角色:
- 导航到客户端的 Service Account Roles 选项卡。
- 在 Client Roles 下拉列表中点 realm-management。
- 在 Available Roles 窗格中,选择 manage-clients,点 Add selected >> 来分配角色。
请注意客户端凭证:
-
记录客户端 ID(
<client_id>)。 -
导航到客户端的 Credentials 选项卡,并记录 Secret 字段(
<client_secret>)。
-
记录客户端 ID(
为便于测试授权流,请在域中添加用户:
- 在窗口的左侧,展开 Users。
- 单击 Add user。
-
输入用户名,将 Email Verified 设为
ON,然后单击 Save。 -
在 Credentials 选项卡上,设置 密码。在这两个字段中输入密码,将 Temporary 开关设置为
OFF,以避免在下次登录时重置密码,然后单击 Set password。 - 显示弹出窗口后,单击 Set password。