Identity Server 4-如何定义支持的授予类型等

时间:2018-11-22 14:53:27

标签: asp.net-core identityserver4 openid-connect

在当前的ASP.NET Core项目(v2.1.6)中,Identity Server 4(v2.2.0)是为用户和API身份验证而实现的,它的工作原理很吸引人。设置给客户端的唯一grant_typeclient-credentials,并且scopes设置了一些自定义范围,其中不允许

在访问offline_access之后,发现支持的.well-known/openid-configuration比指定的更多,并且grant_types是受支持的范围,即使它被禁用(为简便起见也被缩短):

offline_access

两个IdentityServer4的文档,但找不到如何设置此类选项的线索。我偶然发现了an possibly older documentation,但这似乎不是当前版本的一部分。

是否有可能在我刚错过的配置过程中明确定义受支持的授权类型?还是它是自动生成的,根本无法设置?

1 个答案:

答案 0 :(得分:2)

我相信这些都是IdentityServer4支持的。即其功能。

您可以看到它们是如何添加的here(第223行);简短的答案是,它们基于服务器的功能/配置,而不是单个客户端。


您为每个客户端分别配置了您希望其通过ClientGrantTypes集合启用的授予类型。

如果您使用的是内存中客户端集合,则在此处称为AllowedGrantTypes


另外:由于.wellknown / openid-configuration是一个开放标准概念,而不是IdentityServer概念,因此您可以看到对以上here的确认。

  

grant_types_supported

     

可选。 JSON数组,其中包含此OP支持的 OAuth 2.0授权类型值的列表。