为 API 配置应用程序认证

通过此主题,您可以为 API 配置应用程序身份验证。

关于本任务

请注意: 在 HTTP 头中发送客户端证书,并不能验证调用方是否持有与该私钥对应的公钥。 唯一进行的验证是将 base64-encodedPEM 文件中的内容与公共证书进行字符串比对,您可以按照以下步骤配置该证书。
注: 此任务与配置 OpenAPI 2.0 API 定义相关。 有关如何配置 OpenAPI 3.0 API 定义的详细信息,请参阅 编辑 OpenAPI 3.0 API 定义

您可以使用 API Designer UI 应用程序或使用基于浏览器的 API Manager UI 来完成此任务。

您随时可以通过点击 “源代码 ”图标 OpenAPI 源图标,直接切换到底层的 OpenAPI YAML源代码。 要返回设计表单,请点击 “表单 ”图标 表单图标

过程

  1. 打开 API 以进行编辑,如 编辑 OpenAPI 2.0 API 定义中所述。
  2. 启用应用程序认证,如下所示:
    注: 要标识应用程序,必须启用类型为 clientID的安全性需求。
    1. 在“API 设计”页面上,选择 “网关 ”选项卡,然后展开 “网关和门户设置 ”。
    2. 在导航窗格中,单击 “应用程序身份验证 ”。
  3. 您可以选择将客户端证书作为 TLS 客户端证书发送,还是通过 HTTP 标头发送。 请按以下方式指定客户端证书如何发送至网关:

    您可以选择以 TLS 客户端证书的形式发送该证书,或者将其包含在API的 HTTP 头部中。

    1. 在导航窗格中,单击 “应用程序身份验证 ”。
      将列出任何现有应用程序认证源定义。
    2. “应用程序身份验证 ”页面上,选择 “证书 ”。
    3. “应用程序 ”窗格中,单击 “应用程序身份验证源 ”。
    4. “应用程序身份验证源 ”页面上,单击 “添加”
    5. “添加 Shema ”对话框中,选择。
      • tls-cert - 调用 API 时, TLS 客户端证书将发送至网关服务,并用于验证 API 调用方是否持有相应的私钥。
      • 标头 - 调用 API 时,必须在指定的 HTTP 标头中提供 X509 客户端证书。 对于任何调用该 API 的 Consumer Catalog 应用程序,都必须在 Consumer Catalog 用户界面中输入证书;有关详细信息,请参阅“注册应用程序”。 如果正在使用负载均衡器,必须将负载均衡器配置为使用指定 HTTP 头,在负载均衡器终止 TLS 通信后,将相应的客户机证书传递到网关服务。
      注意: 在 HTTP 标头中发送客户端证书,无法通过加密验证来确认调用方是否持有相应的私钥。 唯一进行的验证是将 base64-encodedPEM 文件与客户端证书进行字符串比对。
  4. 单击添加
  5. 单击保存以保存更改。