【问题标题】:Getting Swagger UI oauth2 work with oidc-provider让 Swagger UI oauth2 与 oidc-provider 一起工作
【发布时间】:2019-03-23 11:14:23
【问题描述】:

我正在尝试让 Swagger UI 成功授权给 oidc-provider 实例。

我在这里设置了一个最小(尽可能)的故障实例:https://glitch.com/~copper-vise

它的作用是:

  • 在 /doc 上有 swagger UI,为 swagger.yaml 文件中的定义提供服务
  • 以最少的配置和开发交互运行 oidc 提供程序。

问题是我似乎无法让两者一起工作。看起来它可能是一个 Swagger UI 错误,但考虑到我缺乏 oidc 经验,它可能只是一个配置问题。

要尝试,请单击swagger interface 上的“授权”按钮,将foobar 用于client_idclient_secret,至少检查openid 范围并单击“授权”。此时,您应该会收到登录提示。输入您喜欢的任何内容并登录。此时,swagger UI 应该有一个令牌,但我从来没有做到这一点。

我得到的是 invalid_client 错误,似乎 oidc-provider 需要 Swagger UI 未提供的授权请求标头。 “隐式”流程似乎也根本不起作用。就I can tell 而言,这是 oidc-provider 支持的两个流程(使用此配置?)。

我被困住了,不知道从这里去哪里。似乎swagger.yaml 文件中的 openapi securitySchemes 配置与 oidc-provider 和客户端选项的正确组合应该可以运行。

【问题讨论】:

    标签: node.js oauth-2.0 swagger-ui openapi oidc-provider


    【解决方案1】:

    似乎swagger正在发送client_secret_post客户端身份验证,IdP上的默认值为client_secret_basic。如果您更改 IdP 上的客户端配置以匹配客户端实际使用的方案,它将起作用。

    【讨论】:

      猜你喜欢
      • 2023-01-16
      • 2014-03-11
      • 2015-09-03
      • 1970-01-01
      • 2015-07-06
      • 1970-01-01
      • 2016-08-06
      • 1970-01-01
      • 2016-03-10
      相关资源
      最近更新 更多