管理 OpenID Connect和 OpenID Connect,以获取开放银行应用程序API的访问权限
如果开发者构建的应用程序使用了其中 Verify 一项或多项功能,则该应用程序必须具备调用相应 Verify API 的权限。 在 API 访问中将内部应用程序注册为 API 客户端 ,以便为其分配唯一的客户端 ID 和密钥。
准备工作
- 您必须具有管理许可权,才能完成此任务。
- 以管理员身份登录管理控制台 IBM® Verify 。
关于此任务
通过使用编辑选项,可在创建 OpenID Connect for Open Banking 应用程序时授予对该应用程序的 API 访问权。 可以针对应用程序创建 API 客户机并且每个 API 客户机可具有一组不同的 API 访问权利。
还可以实现 IP 过滤器,以便令牌发放和使用可以限制为或排除特定 IP 地址范围。
过程
- 选择 “应用程序” > “应用程序”。
- 选择 “添加应用程序 ”。
- 选择“ OpenID Connect ”或“ OpenID Connect”作为开放银行应用程序 ,然后选择 “添加应用程序 ”。
- 选择 API 访问权限。
- 创建应用程序 API 客户机。
- 选择 “添加 API 客户端 ”。
- 为 API 客户机指定以下信息:
表 1. 应用程序 API 客户端 字段 设置 名称 指定 API 客户机的名称。 注意: 仅允许使用字母数字及以下特殊字符:- -
- .
- _
已启用 指示 API 客户机是已启用还是已禁用。 缺省设置为“已启用”。 启用了
的 API 客户机可以调用其有权访问的 API。
已禁用的 API 客户端
无法调用任何 API,包括其有权访问的 API。
客户机标识 API 客户机的唯一标识。
保存 API 客户机后,此信息将自动生成并显示在 API 客户机列表中。
客户机密钥 与客户机标识一起用于验证 API 客户机的身份。
这是只能由应用程序和授权服务器知晓的密钥。
保存 API 客户机后,会自动生成此信息。
客户机认证方法 Verify 支持以下客户机认证方法: - 缺省值
- 客户机私钥 basic
- 客户机私钥 POST
- 专用密钥 JWT
- 双向 TLS
注: 默认的客户端身份验证方法为 default。如果保留为缺省值,那么同时允许客户机私钥 basic 和 POST。 如果依赖方支持,请使用专用密钥 JWT 或相互 TLS 作为配置。 有关相互 TLS 客户机认证的更多信息,请参阅 OpenID Connect 相互 TLS 客户机认证和证书绑定访问令牌。
验证客户机断言 JTI 仅当选择了专用密钥 JWT 客户机认证方法时,才会显示此选项。 指示是否验证了客户机断言 JWT 中的 JTI 进行单次使用。
允许的签名验证密钥 仅当选择了专用密钥 JWT 客户机认证方法时,才会显示此选项。 可用于验证客户机断言 JWT 的签名验证密钥标识。
JWKS URI 仅当选择了专用密钥 JWT 客户机认证方法时,才会显示此选项。 依赖方以 JSON Web 密钥集 (JWKS) 格式发布其公钥的 URI。 此 URI 将用于 JWT 签名验证或加密。 系统可以拒绝无法访问或无响应的 JWKS URI。 如果 JWKS 大小过大,那么系统还可以拒绝 JWKS URI。 如果依赖方不发布 JWKS URI,那么可通过 X509 证书格式将公用密钥添加到系统。 请参阅 “管理证书”。 与公共证书关联的“友好名称”是 JWT 的密钥标识 (kid) 标头的值。
TLS 客户机认证属性 仅当选择了相互 TLS 客户机认证方法时,才会显示此选项。 这是用于进行认证的证书属性。- 主题 DN
- SAN DNS
- SAN URI
- SAN IP
- SAN 电子邮件地址
TLS 客户机认证属性值 仅当选择了相互 TLS 客户机认证方法时,才会显示此选项。 将用于认证的证书中属性的值。
证书绑定的访问令牌 指示所生成令牌是否将进行证书绑定。 有关绑定证书的访问令牌的更多信息,请参阅 OpenID Connect 相互 TLS 客户机认证和证书绑定访问令牌。
- 配置访问令牌和刷新令牌到期时间,以限制在这些令牌被盗时进行未经授权的访问的时间。访问令牌用于授予对受保护资源的访问权。 访问令牌到期后,会撤销授权。
表 2. 令牌设置 字段 描述 访问令牌到期(秒) 这用于设置访问令牌到期之前的时间长度(以秒计)。
设置访问令牌到期时间以限制攻击者在客户端应用程序受到威胁时可以使用被盗令牌访问资源的时间。
只允许使用正整数。
缺省值为 7200 秒。 最小允许值为 1 秒,最大允许值为 2147483647 秒。
访问令牌格式 指定访问令牌的格式。 以下选项可用: - 缺省值
- JWT
- 如果要实现 IP 过滤器以确保 API 客户机标识和私钥安全地进行分发,请指定以下信息。
表 3. IP过滤器设置 字段 描述 启用 IP 过滤 指示 IP 过滤器是已启用还是已禁用。
白名单/黑名单 指示过滤器类型,列表是允许列表还是拒绝列表。
如果启用启用 IP 过滤,那么此属性是必需的。
IP 过滤器 IP 过滤器的列表。
如果启用启用 IP 过滤,那么此属性是必需的。
IP 过滤器为单个 IP 地址、IP 范围或 IP 子网掩码的形式。 IPv4 和 IPv6 同时受支持。 例如:192.0.2.55、192.0.2.55-192.0.2.61、192.0.2.55/24、2001:db8::1、2001:db8::1-2001:db8::ff、2001:db8:1234::/48
- 选中 “限制自定义范围 ”复选框。
如果选择限制定制作用域,那么在流程结束时授予客户机的作用域将限制为本部分中指定的作用域。 输入您想要授予的定制作用域的名称和描述。 范围名称指依赖方或客户所请求的 OAuth2/OIDC 范围。 描述是对作用域的通俗解释。 选择添加范围以对更多范围授权。
- 选择要授予其访问权的 API。 请参阅访问权利以获取更多信息。
如果全部选中设置为关,请为客户机选择要授予其访问权的 API。 如果全选设置为开启,那么将为客户机授予对所有 API 的访问权。 但是,您可以取消选中对应任何您不希望客户机访问的 API 的复选框。
注意:- 您可以创建没有初始许可权来调用任何 API 的 API 客户机。 稍后可对其进行编辑以授予特定的 API 访问权。
- 仅可选择与预订套餐相关的 API。
- 对于 OIDC 应用程序,具有与应用程序名称相同的客户机名称的缺省客户机位于此应用程序的 API 客户机的列表中。 除非删除应用程序或切换为其他登录方法,否则无法删除。
- 选择 “完成 ”。
- 请确保您已在 “常规 ”和 “登录 ”选项卡中填写了必填字段。
- 选择 “保存 ”。
这将生成客户机标识和客户机密钥,并将创建应用程序和 API 客户机。
- 查看和编辑 API 客户机
- 滚动以查找 API 客户机。
- 将鼠标悬停在 API 客户端上,然后选择
图标。这会显示“编辑 API 客户机”对话框。
- 使用以下选项:
- 选择
以查看客户机私钥。
- 选择
以隐藏客户机私钥。
- 点击
将客户端 ID 或密钥复制到剪贴板。
- 点击
以查看已轮换的客户端密钥。
- 从列表中选择一个或多个已轮换的客户端密钥,然后单击 “删除 ”将其删除。
- 选择
以生成新的客户机密钥。 如果您认为客户机密钥被泄露,请使用此选项。 重新生成客户机密钥后,必须在此应用程序的所有 OAuth 客户机中更新客户机密钥。- 选中 “保留当前密钥 ”复选框,即可将当前客户端密钥添加到轮换客户端密钥列表中。
- 如果选中了 “保留当前密钥 ”复选框,请选择客户端密钥的描述和过期时间(以浏览器本地时间为准)。 如果未选择过期时间,则将应用 “应用程序设置 ”中为该租户设置的“轮换密钥生命周期”。
- 轮换后的客户端密钥已进行哈希处理,无法再以明文形式检索,但在选定的过期日期之前仍可继续使用。
- 确认后,客户端密钥将立即进行轮换。 新客户端密钥已显示在屏幕上。
- 选择
- 编辑您要更改的任何信息。
- 选择 “完成 ”。
- 删除 API 客户机。
- 滚动以查找 API 客户机。
- 选中对应该客户机的复选框。要删除多个 API 客户机,请选中对应您要删除的每个客户机的复选框。
- 在 “已选项目 ”工具栏中选择 “删除
”。注意: 窗口左下角的 “删除 ”按钮会删除应用程序,而非 API 客户端。还可通过选择 API 客户机并在详细信息面板上选择删除图标来删除 API 客户机。 - 请确认您要删除该 API 客户机。
- 完成后,请点击 “保存”。