我一直在研究如何实施OAuth提供程序来保护我的网络API,但没有取得好成绩。
对于我到目前为止看到的内容,显然只有三个库可以在.net中开发OAuth提供程序:
1- DotNetOpenAuth 2- DevDefined 来自madgex的3- OAuth.net
madgex根本没有供应商的任何文件,我没有发现任何东西,与DevDefined相同,嗯,最后一个有一些文档,但它没有样本。
DotnetOpenAuth我认为是大多数开发人员使用的,但我很难理解它的样本,而且文档很糟糕。
是否有人实施过任何这些库来编写Oauth PROVIDER,而不是消费者,或者任何人都知道我可以在哪里找到合适的文档。
我试图建立一个三条腿的oauth提供者。
有人可以帮帮我吗?
答案 0 :(得分:3)
你有没有看过这个项目模板,虽然它的MVC 2应该提供一些在MVC 3中做到这一点的有用的想法:
http://visualstudiogallery.msdn.microsoft.com/81153747-70d7-477b-b85a-0374e7edabef
然后是DotNetOpenAuth附带的OAuthServiceProvider示例,它是WebForms但原则大致相同。
答案 1 :(得分:1)
可以在此处找到一个很好的DotNetOpenAuth实施示例Releasing an ASP.NET MVC 3 OpenId StarterKit under Open Source License
项目网址:http://mvcopenid.codeplex.com/
开始时应该对你有好处。
更新
顺便说一下,在ASP.NET MVC 4第三方身份验证提供程序中,它是开箱即用的。
答案 2 :(得分:0)
我已按照https://github.com/DotNetOpenAuth/DotNetOpenAuth/wiki/Security-scenarios中提到的步骤实施OAuth 2.0授权服务。
我使用以下链接创建安全证书: http://www.jayway.com/2014/09/03/creating-self-signed-certificates-with-makecert-exe-for-development/
请勿忘记更改解决方案,以使用您创建的证书中的指纹。
这是了解OAuth 2协议的最佳位置: https://tools.ietf.org/html/rfc6749