OpenID,如何开发提供者

Mat*_*zer 17 .net c# openid .net-4.0

目前我正在开发一些基础架构,并且我已经实现了自己的RESTful身份验证机制.

现在我想到,也许我不应该这样使用行业标准,因此与我的项目的互操作性在认证和授权方面可能是微不足道的,也更容易理解.

在查看了一些谷歌搜索的文章并在Stackoverflow中阅读了一些问答后,我找不到如何成为OpenID提供商 - 我不是在谈论使用谷歌,Windows Live,Facebook Connect等认证用户,我想开发一个支持OpenID的系统,如果有人想注册我的服务,他们将在我自己的域中进行 - .

实际上我的问题是:任何人都可以成为OpenID提供商,并且DotNetOpenAuth是一个库,可以在您自己的基础架构中开发此协议吗?

谢谢.

And*_*ott 17

在组织的网站环境中开发OpenID提供程序作为单点登录(SSO)的手段是一种非常有效的方案. DotNetOpenAuth附带了一对演示单点登录关系的示例网站(提供商和依赖方).它们被称为OpenIdWebRingSsoProvider和OpenIdWebRingSsoRelyingParty.

请不要尝试自己实现OpenID的任何比你自己实现SSL.正确获取OpenID安全性和互操作性需要很长时间和深层次的领域知识.DotNetOpenAuth特别为您提供编程访问,可以使用OpenID执行您想要的任何操作,并且由于它是免费的,因此很难出错.

披露:我是DotNetOpenAuth背后的开发人员.


bal*_*dre 9

实际上我的问题是:任何人都可以成为OpenID提供商,并且DotNetOpenAuth是一个库,可以在您自己的基础架构中开发此协议吗?

  1. 如何成为OpenID提供商
  2. DotNetOpenAuth有一些小问题,但是在.NET下使用它是一个很好的工具

如果你认为你可以做到,你可以遵循:

最后,也是最具挑战性的是在您的软件和帐户管理工具中实施OpenID的自定义支持.虽然这种方法当然可以最大程度地控制用户体验,但它也是最危险的,仅适用于具有Web安全性的开发人员.首先回顾一下规格和文档.


但我的问题永远是:

为什么还有一个提供者 Facebook,Google,MyOpenID,...已经拥有它,并且有了它们,很多用户(即使没有他们知道)的OpenID登录......

StackExchange从前不久就是一个OpenID提供商,但是......有很多用户通过StackExchange平台.您是否正在开发这样一个大型社区,因此创建和实施您自己的提供商是合理的吗?

  • 嘿,谢谢你的文字,我真的很感激。关于 **(1) 为什么要多一个提供商?** 或 **(2) 您正在开发这么大的社区吗?**。**(1)** 我不想成为大众的提供者,我想开发一个基于开放标准的认证和授权,仅此而已。而且,由于我的要求,我需要一个单点登录解决方案(为什么不是 OpenID?)?)。**(2)** 它不会是一个大社区,而是一个面向开发人员的云产品,它将不仅仅是一项服务,甚至还有一个官方支持网站(在下一条评论中继续) (2认同)