Facebook是OpenID提供商吗?我知道他们是OpenID的支持者,但他们是否允许人们通过他们的Facebook凭证通过OpenID与其他网站进行身份验证?
我搜索了高,低,远和宽,但在Internet上找不到列出这些模式的可用属性的任何内容.有谁知道这些文件的位置?到目前为止,我知道:
http://axschema.org/namePerson/first
http://axschema.org/namePerson/last
我正在为一组RESTful Web应用程序的用户开发内部身份验证系统.我们的目的是用户应该能够通过Web表单登录一次,并且可以访问我们域中的所有这些RESTful应用程序,这些应用程序可以跨多个服务器分布在私有云中.(我已经理解,单个经过身份验证的会话与纯RESTful方法不一致,但这是一个可用性要求.)
应用程序本身将使用各种编程语言编写,因此需要采用与语言无关的方法.有人向我建议我们可以使用OpenID或OAuth或类似的框架来处理身份验证,但我的理解是这些服务用于第三方服务,而不是用于在内部系统上共享数据的第一方服务.在这种情况下,我们可能有一个中央提供商服务,所有其他应用程序被视为第三方(或依赖方).
问题:
authentication restful-authentication openid-provider oauth-2.0
我看到OpenID登录在任何地方都可用,并决定我应该考虑在我的服务器上实现我自己的提供程序,以便我可以控制我的信息和登录.
令人惊讶的是,这非常复杂和困难.
即使许多站点允许OpenID登录(例如这个),我发现了以下问题:
http://en.wikipedia.org/wiki/OpenID#Security
例如,从2013年8月开始,关于使用Google Plus/Profiles作为代表的SO的解决方案现在得到了Google的错误,称今年4月将从Google移除OpenID 2.0支持并替换为OpenID Connect:
将OpenID委托给Google(不是Google Apps)
有人甚至提供简单的OpenID Connect 单一身份提供商吗?查看OpenID的OpenID提供程序软件列表根本没有提到任何OpenID Connect解决方案,更不用说该页面在4年内没有更新!
http://wiki.openid.net/w/page/12995226/Run%20your%20own%20identity%20server
仔细查看所有这些信息,我很高兴我几年前搁置了我的计划,在我的服务器上实现OpenID 2.0,因为它看起来已经过时了,我想不出一个简单的方法来证明我的身份.令人惊讶的是,我不能只安装一个软件包并编辑配置文件.大多数更简单的实现涉及安装和使用PHP,它有自己需要了解的安全问题.
那么 - 任何一个OpenID专家和它的目标谁能给我一些关于如何设置我的身份提供者或者是否值得困难的建议?我希望控制我的信息和分发我的电子邮件地址以及拥有永久性身份,但如果标准不断变化那么它就不是永久性的.
例如:
example.com和example.net).换句话说,它有点类似于StackExchange网络.
在这种情况下,这个计划会起作用吗?
example.com和example.net(以及任何后续添加)作为OpenID依赖方,仅接受OpenID登录id.example.org.example.com并example.net在您第一次访问时执行OpenID回复立即请求,这样如果您已登录,则会id.example.org立即自动登录您正在访问的站点.如果您没有登录,他们应该设置一个cookie,以保存他们在每个页面请求上执行此操作.id.example.org为OpenID提供程序和使用者.它还应该使用Facebook和其他身份提供商,并允许标准的用户名/密码访问.(多个登录方法可以附加到一个帐户.)我能看到的唯一问题是:
example.com.设置了"未登录"cookie.example.net.同上.example.net.example.com,因为"未登录"cookie没有被检查id.example.org,因此没有登录.我不认为这是一个重大问题.
总的来说,我认为这是一个非常好的系统.我只是想看看它的评论.我有没有预料到的问题?它会是马车还是慢车?StackExchange使用一种非常不同的方法.我认为他们有充分的理由吗?
我不创建大型网站,所以我主要是openid的用户,它是各种各样的实现.我在这里使用openid,我喜欢它因为我正在使用我的gmail账户(我计划将来退出gmail,但现在我用它来处理所有事情),所以我不必记住另一个登录/帐户.
因此,在我天真的用户心中,我认为使用openid很简单:你有很多提供者,当用户试图登录时,你的应用询问他/她的提供者:"这个人能够登录吗?",提供者返回"此用户对某些数据有效"(有些数据可能会返回比其他数据更多的数据),或者如果它是一个不成功的登录名,则只返回任何内容.
我打算在未来的网站上使用openid.在我看来,我想我会使用某种可以为我"抽象"的lib:你的用户使用提供者登录,你的应用程序不知道每一个,这个lib从一个用户名返回一个唯一的标识符供应商.例如:myemail@gmail.com用于登录.它在lib中有一个唯一的id,在哈希计算之后返回,或者你的应用程序将它用于所有内容.
在我的应用程序中,我会尝试只处理由openid libm taht创建的id会处理facebook,twitter,gmail等.也许这个lib有一个带有提供者名称的表,当一个人第一次登录到你的站点时,你在数据库中有一行说"这个唯一的id来自twitter".从理论上讲,这似乎在我的脑海中起作用.
...但是在阅读完Openid是一场噩梦之后,我开始思考,如果找到这样一个能够如此完美地工作的lib,那真的是个好主意.
因为每个人(openid提供者)现在都拥有自己的登录机制,而不是只担心一个系统(我自己,我要创建自己的登录机制) - 现在我不得不担心几十个系统 - 而openid应该解决确切地说.现在,我需要一个巨大的lib,我想要抽象出这整个混乱.
像我描述的那个库是否存在?如果是这样,是否有可能创建一个至少试图表现得像一个真正"开放"梦想的应用程序?
(我知道openid与facebook auth不一样......但是从最终用户的角度来看,它是相同的恕我直言,"在网站上使用相同的登录".我想抽象登录过程,即使协议不是'为此而做的.对于很多服务,你只需要知道某人是否是她自称的人.)
有没有人知道node.js中的OpenID提供程序实现良好?也许节点模块?
我使用passportjs来实现中继方功能.
我完成了OpenID的学习,以了解它的主要功能.下一步是为我的客户提供OpenID Provider程序.我的目标是使用SpringBoot进行开发(不使用Spring Security).
我注意到我有OpenID Connect,MITREid作为选项.但没有人提供有关如何创建客户和供应商的教程.
在另一个主题上,发现来自IBM的链接都是凭空而来的.
作为我的应用程序的OpenID Provider开发的一个简单的教程,这将是非常重要的.
我使用Oauth2框架进行授权和访问控制,以保护我的spring boot微服务api.Oauth2框架工作正常,但现在我的客户端需要一个专用的OpenId Provider,用于在Oauth2框架之上进行身份验证.我已经在Google上进行了一些搜索,但找不到太多资源来为Oauth2实现Own OpenId Provider.我已经浏览了很多博客,并且可以理解当我们想要从Oauth2委派身份验证时,OpenId基本上被使用.OpenId是在Oauth2之上创建的,但是找不到很多用于激活或实现它的资源.
任何人都可以帮我这个
我在Spring Framework中使用Oauth2完成的完整源代码如下所示
我正在寻找一个在Django上的OpenID服务器上实现的库.也就是说,我有自己的用户数据库,需要成为我自己的OpenID提供商.我并不需要消耗的OpenID像所有我发现Django的库.有没有好的图书馆?
我发现的一个图书馆是https://bitbucket.org/romke/django_openid_provider/,但它已经有一年未被触及.它状态良好吗?
openid-provider ×10
openid ×9
oauth-2.0 ×2
spring ×2
cross-domain ×1
django ×1
facebook ×1
java ×1
node.js ×1
python ×1
schema ×1
spring-boot ×1