- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我计划开发一个支持 OpenID Connect 作为依赖方的 Web 应用程序,以便应用程序的用户可以使用他选择的身份提供者进行注册和登录。 (这与每个 Stack Exchange 站点上的“我的登录”使用的技术相同。)该应用程序可供服务器运营商下载和安装,就像 WordPress、phpBB 和 MediaWiki 软件可用一样。服务器运营商应该手动注册哪些 OpenID Connect 提供商?
当 OpenID 2.0 是最常见的协议(protocol)版本时,大多数身份提供者 (IDP) 允许任何依赖方 (RP) 使用他们的身份服务。只有少数 IDP 运营着 RP 白名单;我遇到的是 PayPal Access(现在称为 Log In with PayPal)。关闭访问是有商业原因的,但关闭政策需要国内流离失所者付出额外的努力,所以大多数人都没有打扰。
2015 年 4 月,Google 放弃了 OpenID 2.0,转而使用 OpenID Connect,其中每个 RP 都是一个 OAuth 2.0 客户端应用程序,具有自己的客户端 ID 和由提供商发布的客户端密码。通常,OAuth 要求每个客户端在带外向每个提供者注册,当每个提供者使用唯一的 API 公开 protected 资源时,这很好。但是 OpenID Connect 是一个通用的身份验证 API,当用户在 RP 的登录页面中输入相应的 OpenID 标识符 URI 时,所有 IDP 都应该以相同的方式公开它。所以OpenID Connect spec描述了一个可选的动态客户端注册 (dyn-reg) 功能,它允许 RP 自动注册为 OAuth 客户端,如 Hans Z.'s answer to "Can you use OpenID Connect without obtaining OAuth credentials?" 中所述.但是,每个 IDP 都必须努力实现 dyn-reg。 Google 和 PayPal 是选择不这样做的 OpenID Connect IDP 的例子。即使提供者确实实现了 dyn-reg,规范仍然允许 IDP 要求 RP 首先提供由提供者发布的有效初始访问 token 。因此,如果有 n 个 RP 和 m 个公共(public) IDP,则人类必须阅读并接受 n*m 次契约(Contract)。
换句话说,OpenID 2.0 中的默认是开放的; OpenID Connect 中的默认设置是关闭的。
因此,随着越来越多的 OpenID 提供商效仿 Google 并放弃 OpenID 2.0 转而支持 OpenID Connect,如果我采用 RP,我希望粘贴标识符 URI 的最终用户会被拒绝并显示错误消息,大意是“The provider of the Example.com 不知道此标识符,并且不支持动态客户端注册。”然后,运行我的 Web 应用程序的服务器的运算符(operator)必须阅读此类错误的日志并手动注册每个此类 IDP 以获取客户端凭据。而且我必须在这个 Web 应用程序中构建配置变量,让服务器运算符(operator)提前为每个流行的提供商指定客户端凭据,这样网站的用户就会被转换而不是失望。
我想让下载了我的应用程序的服务器运算符(operator)可以轻松地将其安装在其域中的 Web 服务器上并作为 RP 上线。因此,我希望它的设置过程能够建议服务器运营商可能会遇到此问题的公共(public) IDP,而不是让管理员自行处理的空白“添加 OpenID 连接提供程序”表单。
其他相关问题(OpenID Connect providers 和 List of OpenID Connect providers)的列表太短、过时,没有将需要手动注册的 IDP 分开,也没有将流行的 IDP 与小众的 IDP 分开。例如,Salesforce.com 是一个利基 IDP,allows only its own customers to be RPs ,而且我认为最终用户不会期望能够在公共(public) Web 应用程序上输入来自利基 IDP 的标识符。
我想知道我可以从哪些来源收集有关广泛使用的 IDP 的信息并保持最新状态。
那么,在网站上线之前,我将如何寻找不支持开放式动态客户端注册的知名通用 OpenID Connect 提供商呢?
最佳答案
关于authentication - 新站点有望支持哪些知名 OpenID 提供商?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30385666/
OpenID 是否改善了用户体验? 编辑 不是要贬低其他评论,但我在下面得到了一个非常好的回复,它以一种合理的底线方式概述了 OpenID 的 3 个优点。我还在其他评论中听到了一些耳语,你可以通过
我不想疏远我的用户,但是通过多种方式登录网站违背了实现 OpenID 的目的。这不是一个全新的网站,大约有 3000 名用户是顽固的(我们有一个很棒的社区),但并非所有人都是顽固的,我不想因为登录过程
我在 StackOverflow 上使用 OpenID 来验证我的用户身份,这与这里的使用方式非常相似。我真正需要做的是让 OpenID 在我网站的所有子域中工作。 该站点的行为与 Kijiji 大致
OpenID 有没有其他选择,我的意思是一个提供我们详细信息的站点,我们可以使用该 ID 登录到一个站点? 更新 假设认为我正在开发一个具有 openID 集成的网站,我将只有一个用户名,没有那么多细
有人可以帮助我了解 OpenID 的工作原理吗?我对以下答案感兴趣: 如果使用 OpenId,您还需要存储用户 ID 和密码吗? 当用户登录时,我的应用程序如何创建新 session ? 当用户退出应
最重要的问题是我的电子邮件地址是否被传输到消费服务。 例如,如果我使用 Google 在这里登录 SO,那么 SO 知道我的 gmail 地址吗? 他知道我在 gmail 设置中输入的用于外发邮件的名
OpenID 连接的当前状态是什么?我想将它用于新的 SSO 系统。是否有任何库可用于实现? 最佳答案 最终 OpenID Connect 规范于 2014 年 2 月 26 日根据 http://o
作为单点登录实现,我认为 OpenID 很棒。即便如此,它是否一定是电子商务的好选择?我知道它可以使用,但应该使用吗?您是否冒险将所有访问详细信息放在一个篮子中? 那里的普遍意见是什么? 最佳答案 当
我不是问具体的实现,也不是问跨站单点登录机制的全局世界观,我只是想知道社区对 OpenID 底层可用性的看法。您是否认为使用由(非技术观察者)随机提供的各种提供者发布的 URL 来代替实际的用户名是人
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭11 年前。 Improve th
我是openID的新手。我花了很多时间思考最好的做法是为用户提供选择,并使用各种启用了OpenID的帐户登录。 (我必须进一步澄清,我的系统不是一个只需要简单的“一次性身份验证”即可进行博客发布的系统
我希望将 OpenID 实现为一组合作伙伴网站的提供商。问题是这个网站是为 child (13 岁以下)准备的,所以我有一些业务限制需要处理 - 主要是帐户不能用于任何非合作伙伴网站(我们与每个获得批
WordPress 的 OpenID 插件似乎不接受任何 Google OpenID 提供商链接: http://google.com/profiles/username 或 https://goog
我在看 DotNetOpenAuth samples并且有两个 OpenID 提供程序示例;和 OpenID 提供程序和一个 OpenID Web Ring SSO 提供程序。 有谁知道两者之间的区别
存在一个行为不当的 OpenID Connect“兼容”iDP(它现在应该保持无名)——它在使用范围 openid 和任何包含 id_token 的 response_type 时抛出错误。这肯定是一
有没有人知道或有任何我可以用来构建使用 OpenID 的站点的文档?例如,当用户访问我的网站时,我接受一个 OpenID,然后我会将他们重定向到 OpenID 提供商,然后当他们通过身份验证时,他们将
现在我使用 3rd 方网站作为我的 openid 提供者(myvidoop 和 myopenid)。我正在考虑让我的网站充当我的提供者。我认为肯定会有一些脚本可以安装并轻松实现。我已经尝试过 janr
我有用户帐户的本地表 用户 ID(nvarchar)、密码、电子邮件、姓氏角色等。 现在每个子表中都使用了 UserID。我想在我的站点中启用 OPENID 注册,稍后将集成本地用户注册功能。我应该将
我遇到了 google openid 标识符的问题。 我在简单的 asp.net mvc 项目中使用 dotnetopenauth 库(dotnetopenid 的继承者)。 在本地主机上的测试期间,
我对 OpenId 很陌生,并且在身份验证完成后理解如何使用 OpenId 时遇到了一些问题。 我正在创建一个新站点,并且在使 openId 身份验证正常工作方面没有问题。但是我不确定一旦用户登录,我
我是一名优秀的程序员,十分优秀!