如何在没有OWIN的情况下在.net Framework中实现OpenId Provider

时间:2017-10-31 13:58:51

标签: c# asp.net oauth-2.0 openid-connect identityserver4

我正在开发一些与.net框架应用程序交互的小型服务。这些服务具有需要身份验证的UI组件,并且将单独托管,但我们需要使用现有的登录页面。我希望将IdentityServer4设置为授权机构,并将旧应用程序设置为OIDC提供程序。

问题是我还没有找到有关如何在.net框架中执行此操作的任何信息。我无法将遗留应用程序转换为使用.net核心或owin hosting,它将identityserver3 / 4排除在提供者之外。 DotNetOpenAuth未被认证为提供商,似乎没有提供标准的openid接口。

我可以使用哪些库或模式来解决此问题?

编辑:经过一些审核后,我最常寻找的是一个中间件,可以让我将webforms身份验证转换为OIDC身份。

1 个答案:

答案 0 :(得分:1)

嗯..你可以先阅读http://openid.net/specs/openid-connect-core-1_0.html ..

我一个月前遇到同样的问题..

可能有4-6个规范文档依赖于此。你也必须阅读这些(没有捷径)你可能想要在get和post请求上制作序列图。

在所有这些中,阅读并实现一个小型jwt项目,这将有助于清除您对如何使用承载令牌的概念(这涉及如何创建和验证承载令牌)

一旦你知道了jwt并且有了你的序列图......你可以进行即兴创作并添加更多参数.OpenId似乎相对简单

另外,不要忘记使用邮递员或提琴手等第三方客户端测试您的应用程序。

希望这有帮助!一切顺利。