【发布时间】:2018-02-14 07:42:39
【问题描述】:
我认为我的问题的简短回答是“否”,但请允许我描述一下上下文。
我们目前正在使用 IdentityServer 来授权访问我们的 API(通过客户端凭据)。所有 API 客户端都是在我们的数据中心运行并受我们控制的计算机程序。为了最小化我们的攻击面,我们的 IdentityServer 运行在一个内部/私有网络上,可以从我们的 API、服务和其他应用程序访问。没问题。
我们现在想利用 IdentityServer 安装为我们面向公众的 Web 应用程序提供用户身份验证。这些应用程序通过 ASP.NET MVC 运行,因此需要用户与 IdentityServer 交互以进行密码验证(隐式或混合授权类型)。这似乎是一个硬性要求,但我很好奇是否有一种简单的方法来维护 IdentityServer 的私有安装。
我们可以代理来自 ASP.NET 中间件的请求来处理身份验证握手吗?这样做是否有意义?我倾向于面向公众的 STS 以消除任何代理,但我想我会问看看还有哪些其他模式可以使用。
不管怎样,我们最终会在混合流中使用基于 cookie 的身份验证,但也可以从隐式流开始。
【问题讨论】:
标签: oauth-2.0 openid-connect identityserver4