OpenID需要和常规的用户名和密码在绝大部分的网站上共存一段时间。所以,作为程序员的我们需要设计一些很好的惯例来处理这种两种模式并存的状况。要做到这点,如果我们能有效区分OpenID和常规的用户名会有很大的帮助。
考虑下面这个流程:
<shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></path><lock v:ext="edit" aspectratio="t"></lock></shapetype><shape id="_x0000_i1025" style="WIDTH: 300pt; HEIGHT: 107.25pt" type="#_x0000_t75"><imagedata src="file:///C:%5CDOCUME~1%5CZHILEI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image001.gif" o:title="openid-as-username"></imagedata><lock v:ext="edit" cropping="t"></lock></shape>
如果OpenID能和常规的用户名区分开的话,你就不需要加上一个额外的密码输入框来让登录或者登记变的更加复杂。
看起来已经有的网站支持让OpenID以完整的URL模式输入,而不是仅仅是用户名。Zoomr和Jyte都明确鼓励/要求完整的URL模式的OpenID的使用。
<shape id="_x0000_i1026" style="WIDTH: 291.75pt; HEIGHT: 194.25pt" type="#_x0000_t75"><imagedata src="file:///C:%5CDOCUME~1%5CZHILEI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image002.png" o:title="zoomr-openid"><font size="3"></font></imagedata></shape>
<shape id="_x0000_i1027" style="WIDTH: 350.25pt; HEIGHT: 209.25pt" type="#_x0000_t75"><imagedata src="file:///C:%5CDOCUME~1%5CZHILEI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image004.png" o:title="jyte-openid"><font size="3"></font></imagedata></shape>
但是实际使用中肯定有用户名模式的OpenID的例子。所以上述两种方法没有一种被作为实际使用的标准。我推荐我们都采用完整的URL的模式。如果你的网站只接纳OpenID,那你还是应该通过让登录帐号类似http://[input field]来强制这个想法。
原文链接:http://www.loudthinking.com/arc/000606.html
分享到:
相关推荐
- 部署时,确保PHP环境正常运行,将PHP端代码部署到服务器,并配置好URL以供小程序调用。 - 修改`config.php`中的AppID和AppSecret为实际的微信小程序配置信息。 - 测试时,首先在小程序端模拟用户授权登录,检查...
它通过URL作为身份标识,用户可以将这个URL链接到提供OpenID服务的验证服务器(也称为身份提供者)。当用户尝试登录支持OpenID的网站时,网站会重定向用户到其选择的OpenID提供者进行身份验证,之后提供者会将验证...
这个教程将深入探讨如何将OpenID集成到您的项目中,帮助您为用户提供更加方便、安全的身份验证体验。 一、OpenID基础 1. **OpenID原理**:OpenID的核心思想是用户拥有自己的身份URL(Uniform Resource Identifier...
本代码作用于前后端分离获取微信openId,调用说明:在api中新建一个Default.aspx页面,复制文件中代码到页面中,修改appid,key,webAddr值。部署api;前端跳转url:api地址+...如果调转成功,会带上openid跳转回reurl页面
PHP如何获得Openid,微信公众号通过appid和appsecret获取Openid,该类实现了从微信公众平台获取code、通过code获取openid和access_token、
用户只需要注册一个OpenID提供商(通常称为OP),然后可以使用这个提供商的URL作为身份标识,在支持OpenID的网站上进行登录。这样,用户不再需要记住每个网站的用户名和密码,减少了密码管理的复杂性,并降低了因...
PHP微信公众号授权登陆,获取OpenID,昵称,头像相关信息,完整源代码,只需修改几个配置信息就可以
微信开发获取openId
下面将详细介绍QQ OpenID在Java中的实现原理、步骤以及关键知识点。 首先,理解OpenID的概念。OpenID是一种开放标准,允许用户使用一个统一的身份(即OpenID)在多个网站上进行身份验证。这种方式减少了用户记住多...
现在,你已经成功地获取到了微信用户的code、openid、名字(nickname)和头像URL(headimgurl)。这些信息可以存储在你的数据库中,以便后续使用。 在实际项目中,需要注意以下几点: - **安全处理**:确保你的...
OpenID 的诞生,是为了解决这种分散的身份认证问题,让用户可以通过一个统一的标识(通常是个人博客或其他在线存在处的URL)在不同网站上进行身份验证。 2. **作用** OpenID 的主要作用在于简化身份验证过程,...
- **验证签名**:依赖方通过验证OpenID提供者发送的数据的签名来确保数据的完整性和来源的真实性。 - **标识用户**:一旦验证完成,依赖方就可以确认用户的身份,并允许用户访问相应的资源。 #### 四、安全考虑 - ...
这个压缩包“openid资料大全”显然是关于OpenID及其相关技术的学习资源集合。 OpenID的核心理念是分散式身份验证,用户不再需要在每个服务提供商处存储和保护自己的账户信息,而是通过一个信任的“身份提供商”来...
为了充分利用JOIDS,开发者应熟悉OpenID协议,理解其工作原理,并学习如何配置和扩展JOIDS以满足特定需求。此外,对于运维人员来说,了解如何在生产环境中部署和维护JOIDS也至关重要。在Java开发环境中,JOIDS是一个...
2. **重定向**:应用程序将用户重定向到 OpenID 提供商进行身份验证。 3. **身份验证**:用户在 OpenID 提供商处输入自己的凭证进行验证。 4. **响应**:如果身份验证成功,OpenID 提供商会向应用程序发送一个包含...
在 OpenID 流程中,Consumer 将用户重定向到 Provider,Provider 验证用户的身份后,将用户安全地送回 Consumer,同时传递一个验证令牌。 在 Java-openid 库中,你可以找到以下关键组件和概念: 1. **Message**: ...
协议中还涉及了各种消息格式,如键值对(Key-Value)、名值对(Name-Value)和消息摘要(Message Authentication Code, MAC),以及信息的规范化(normalization)以确保一致性。此外,安全方面的重要概念包括共享...
本应用便于微信公众号公众号管理 自己公众号关注用户。 1.列表 显示公众号关注用户。 2. 可以以Excel形式将用户信息 发送到PC或手机上。 3. 显示微信公众号发红包 需要的用户OpenID。
《Python库:深入理解plone.app.openid-2.1.0》 在Python的世界里,库是构建强大应用程序的基础,它们提供了丰富的功能,让开发者能够高效地编写代码。plone.app.openid-2.1.0是一个专门针对OpenID身份验证的Python...