是否可以在专用网络上运行IdentityServer进行MVC身份验证



我相信我问题的简短答案是"否",但请允许我描述上下文。

我们当前正在使用IdentityServer来授权访问我们的API(通过客户端凭据)。所有API客户端都是在我们的数据中心运行并在我们控制的情况下运行的计算机程序。为了最大程度地减少我们的攻击表面,我们的身份服务器正在从内部/专用网络中运行,可从我们的API,服务和其他应用程序到达。没有问题。

我们现在想利用IdentityServer安装来为我们面向公共的Web应用程序提供用户身份验证。这些应用程序通过ASP.NET MVC运行,因此需要与IdentityServer的用户交互以进行密码验证(隐式或混合授予类型)。这似乎是一个很难的要求,但是我很好奇是否有一种简单的方法来维护身份服务器的私人安装。

我们可以从ASP.NET中间软件中代理请求来处理身份验证握手,甚至是否有意义?我倾向于面向公共的STS来消除任何代理人,但我想我会要求查看其他哪些模式。

对于它的价值,我们最终将使用基于cookie的身份验证与混合流,但也可以从隐式流程开始。

用户的浏览器必须能够访问身份服务器。这可以通过代理。

最新更新