IdentityServer的Windows身份验证

时间:2019-06-11 07:16:55

标签: openid identityserver4 openid-connect

我有一个Web API应用程序,一个Identity Server应用程序和一个桌面客户端。我的目标是让桌面客户端通过Identity Server使用 windows身份验证对Web API进行桌面客户端身份验证。在没有Windows身份验证的情况下,此方法工作正常:桌面客户端提供了一个浏览器窗口,供客户端输入凭据。然后验证凭据,并授予用户对桌面应用程序的访问权限。

我为Windows身份验证设置了以下内容: IdentityServer应用程序在其自己的应用程序池上运行。仅启用Windows身份验证 Web API应用程序在其自己的应用程序池上运行。启用了匿名身份验证。

但是问题是,当桌面客户端尝试连接以获取openid配置时,它失败并说:“无法从以下位置获取配置:'http:// {server} /IdentityServer/.well-known/openid -组态'”。如果我在IdentityServer上启用了匿名身份验证,该错误将消失,但是所有呼叫当然都是匿名的,并且用户将不会得到身份验证。 此外,如果在进行呼叫之后,我再次禁用了匿名访问(因为已经发生了openId呼叫),那么该用户将通过身份验证,并且我将获得预期的行为。

所以我的问题是:我如何指示服务器允许对无法创建的调用以从以下位置获取配置:'IdentityServer / .well-known / openid-configuration'以匿名方式工作,而其他人可以工作仅通过身份验证?

0 个答案:

没有答案