1

首先:我可以成功拨打电话

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。

我该如何配置它,或者我必须在哪里编写自己的抽象代码才能使事情以这种方式工作?

4

1 回答 1

1

不是开箱即用。

您可以使用扩展授权来实现它。

https://identityserver4.readthedocs.io/en/release/topics/extension_grants.html

于 2017-02-26T09:53:53.200 回答