首先:我可以成功拨打
http://localhost:7791/connect/token POST
grant_type=refresh_token
&refresh_token={refresh_token}
&client_id=resource-owner-client
&client_secret=secret
并返回一个新的access_token,refresh_token,expires_in和token_type。
但是,我想在没有client_secret的情况下这样做。 在我的情况下,我的客户端是已发出启动access_token,refresh_token等的远程应用程序。
使用此电话。
http://localhost:7791/connect/token POST
grant_type=password
&scope=arbitrary offline_access
&client_id=resource-owner-client
&client_secret=secret&username=rat&password=poison
初始调用是可信的,秘密知道,但下游使用refresh_token不应该需要client_secret。
我如何配置这个或在哪里编写自己的抽象来使事情以这种方式工作?
答案 0 :(得分:1)
没有开箱即用。
您可以使用扩展程序授予实现该目的。
https://identityserver4.readthedocs.io/en/release/topics/extension_grants.html