我试图让Swagger UI成功授权给oidc-provider实例。
我在这里设置了一个关于毛刺的最小(尽可能)实例:https://glitch.com/~copper-vise
它的作用是:
问题是我似乎无法让两者一起工作。看起来它可能是一个Swagger UI错误,但考虑到我对oidc缺乏经验,它可能只是一个配置问题。
要尝试,请单击swagger interface上的“授权”按钮,使用foo
和bar
作为client_id
和client_secret
,至少检查openid范围并单击“授权”。此时您应该获得登录提示。输入您喜欢的任何内容并登录。在这一点上,招摇的UI应该有一个令牌,但我从来没有得到它那么远。
我得到的是invalid_client
错误,似乎oidc-provider期望Swagger UI没有提供的授权请求标头。 “隐含”流程似乎根本不起作用。至于I can tell,这些是oidc-provider支持的两个流程(使用这种配置?)。
我被卡住了,不知道从哪里开始。看起来swagger.yaml
文件中的openapi securitySchemes配置和oidc-provider和客户端选项的正确组合应该可以运行。
似乎招摇正在发送client_secret_post
客户端身份验证,IdP上的默认值是client_secret_basic
。如果您更改IdP上的客户端配置以匹配客户端实际使用它的方案将工作。