写点什么

使用 OpenID、OAuth 和 Facebook Connect 武装你的站点

  • 2009-04-24
  • 本文字数:1861 字

    阅读完需:约 6 分钟

如果你正在盘算着如何为你的新网站创建身份管理系统(通常也称为用户管理系统或权限管理系统)的话,在动手之前你一定要看看 Dion Hinchcliffe 写的这篇题为《现代 Web 身份:为什么你的 Web 应用应该支持 OpenID、OAuth,以及可能应该支持 Facebook Connect》的文章,你或许会在读完之后改变你的主意。在他看来,使用这些新一代 Web 身份管理系统是完成这一工作更快的做法,而且功能更强且更好。他认为通过这种方法:

  • 可以更容易、更快捷和更安全地让使用者在你的站点建立他们身份。
  • 可以让业务可以单点登录到你的应用。
  • 把你的站点转变成为一个针对于第三方应用的平台,让这些应用可以安全地访问用户数据。
  • 可以将你的站点或应用集成到使用者及其关系网的社交体验(social experience)中。

在简要回顾企业单点登录和 Web 身份管理的历史之后,Dion 给出了当今实现 Web 单点登录的新思路:使用 OpenID OAuth 和(可选的) Facebook Connect

OpenID

OpenID 背后的想法其实很简单:

让使用者在登录你的应用时使用自己选择的身份提供商,而不是让他们去填写一个在线表格,然后把这些信息捕获到使用者不可能信任或不长期信任的私有本地账户中。

由此,OpenID 为使用者提供了一种访问新站点更简单的方法(还记得上次为了下载一份资料,而不得不在那个站点上注册一个你自己也知道以后可能再也不会使用的账户么?:))。Dion 把 OpenID 的好处总结为:

  • 更快、更简单的登录,因为消除或简化了注册过程。
  • 更好的登录过程和生命周期,因为用户从此只需使用一个 ID 和口令。
  • 一致的 Web 身份,因为 ID 的统一,让其他人通过这个 ID 就可将之与实际的用户划上等号。

使用 OpenID 并不要求使用者有什么改变,事实上,很多使用者很可能本身就已经有了一个 OpenID,而他自己却还不知道。看看支持OpenID 的提供商列表,开始你的OpenID 使用之旅吧。

既然支持OpenID 显然会给网站带来更大的流量,那么支持它当然是势在必行。其方式不外乎自己动手实现规范,或利用现成类库两种。这样的类库并不难找,因为目前的主流语言都已经有了相应的 OpenID 库

值得注意的是,支持 OpenID 并不意味着站点或应用就放弃了对用户信息的收集,在这种情况下它们依旧可以捕获一些使用者相关的信息,只不过这些信息是在 OpenID 的上下文中,而不是使用者不想给出的口令或其他保密信息。

OAuth

为站点提供编程接口可以让其知名度更上层楼,然而在流量增加的同时,站点面临的安全压力也在同比增长。OAuth 正是该背景下的产物,它可以让第 3 方应用安全使用你的站点数据。说到使用 OAuth 来保护 API 的好处,Dion 列举如下:

  • 安全、保密的第 3 方数据访问
  • 对于第 3 方访问的控制是声明性的
  • 大量第 3 方应用的使用将有助于推动本地站点的使用

和 OpenID 一样,在主流语言中你同样可以找到对OAuth 的支持。对于有兴趣了解OAuth 规范的读者则可以参考这里

Facebook Connect

和以上两个都是开放标准不同,Faccebook Connect 是一个私有标准。至于选择它的原因,Dion 给出的解释是“缺乏开放、被广泛的社交身份系统,而该类系统的影响却越来越大。”。同时,他还援引了 Facebook 的数据:

对大多数站点来讲,“2/3 的新注册是通过 Facebook Connect 来的,而且这些使用者大约有一半以上都开始使用这些站点”。

Dion 以自己为例对 Facebook Connect 的使用效果进行了说明:

例如,我经常使用一个视频共享站点 Vimeo ,但我的很多朋友并不使用,甚至没有那里的账户。但是,在我发布视频的时候,通过显示我视频的 Facebook Connect 链接,他们可以在自己的活动流(activity stream)中看到我在 Vimeo 上做的事情。然后,他们可以决定是否观看这个视频,或者是访问 Vimeo。

Facebook Connect 的功能和优点如下:

  • 一键登录,使用者可以使用自己的 Facebook 身份并让你的站点访问他们的 Facebook 信息。
  • 更多的参与,利用使用者个人兴趣来提供更具针对性的信息,交付朋友自己定制的内容。
  • 新的分发模型,通过 Facebook 上的活动流或其他社交渠道,使用者可以和 Facebook 上的联系人分享内容和发生在你站点上的行动。
  • 直接访问 Facebook,使用该 API,可以让超过 70 万的开发者构建大量应用。

Facebook Connect 的使用并不复杂,因为它本身就是一组 Javascript 库和 XML 标记,关于它的使用可以参考 Dion 给出的入门指南

幸运的是,这3 种工具并非排他的。完全可以结合使用,Dion 在文中给出了结合使用OpenID 和OAuth 的例子: Step2 项目。您是否已经建立您的站点,是否考虑开放您网站的 API,是否考虑拥抱 Facebook?那么 Dion Hinchcliffe 的这篇文章绝对应该在你的阅读范围之列。

2009-04-24 03:336231
用户头像

发布了 255 篇内容, 共 68.9 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

Bright Data:为 AI 视频与多模态数据采集打造企业级基础设施

知识浅谈

人工智能 爬虫

主流低代码开发平台有哪些:加速数字化转型的核心力量

科技经济

AI英语学习APP的核心功能

北京木奇移动技术有限公司

AI教育 软件外包公司 AI英语

出海 AI 公司招 Java 大佬|北京

程序员泥瓦匠

AVrecon僵尸网络感染超7万台Linux路由器,潜伏两年终被发现

qife122

网络安全 Linux恶意软件

储能如何精准“嵌入”绿电直连?破解容量、策略与经济性三重挑战

西格电力

光伏发电 #高性能存储 新能源产业 风电 绿电直连

存储成本降半、处理效率倍增:火山引擎多模态数据湖如何支撑Agent规模化落地

字节跳动数据平台

司马阅与道生达成生态战略合作,AI 技术赋能政企服务

司马阅

司马阅与佳富恒达成生态战略合作,AI技术与教育场景的深度融合释放教育领域核心价值

司马阅

司马阅与三平立维柏达成生态战略合作,共建“AI+建筑”产业新生态

司马阅

司马阅与中网管家达成生态战略合作,共同探索“AI+职业教育”的深度融合路径

司马阅

Genspark 新融资逾 2 亿美元,腾讯、红杉中国参投;Ask Copilot 入驻 Windows 任务栏丨日报

RTE开发者社区

京东商品列表API实战:关键词搜索与数据获取全指南

Datafox(数据狐)

京东API 京东商品列表API 京东数据采集 京东数据分析 关键词搜索京东api

火热报名中!2025 龙蜥操作系统大会亮点速递

阿里巴巴云原生

阿里云 云原生

大数据-144 Apache Kudu:实时写 + OLAP 的架构、性能与集成

武子康

大数据 spark 分布式 kudu Apache Kudu

怎样为你的 RAG 应用选择合适的嵌入模型?

Baihai IDP

AI LLM 检索增强生成 嵌入模型 RAG 系统

司马阅与赢思强达成生态战略合作,共同推动企业培训业实现从“经验驱动”到 “数据智能驱动”的升级

司马阅

过程控制 软件维护经验总结(6)

万里无云万里天

工业 工厂运维 过程控制

储能技术怎么选?— 电化学、飞轮、氢能适配绿电直连场景深度对比

西格电力

高性能存储 #高性能存储 智慧储能电站 储能 绿电直连

MyEMS:开源时代下的智能能源管理新选择

开源能源管理系统

开源 能源管理系统

React 中 useCallback 的基本使用和原理解析

老李说技术

useCallback react fiber

HIPAA新规升级:小型诊所的数据安全指南

qife122

HIPAA 医疗合规

智算时代下操作系统的破局之路!龙蜥技术生态分论坛议程上线 | 2025 龙蜥大会

OpenAnolis小助手

AI 操作系统 龙蜥操作系统大会

2025支持AI 驱动数字化转型的低代码开发平台有哪些

科技经济

Gartner的AI存储大考,华为如何交出“最高分答卷”?

脑极体

AI

政企联手的SPD模式,撕开了建筑业生产关系变革的第一道口子

AI4ELAB

中昊芯英入选省发改委“2025年浙江省服务业领军企业名单”

科技经济

2025 国内数据资产管理平台 TOP10 解析:从合规到价值的进化之路

科技经济

过程控制 通讯维护经验总结(4)

万里无云万里天

工业 工厂运维 过程控制

【仓颉开发HarmonyOS系列】仓颉关系型数据库基础操作实战

轻口味

鸿蒙 HarmonyOS 仓颉 仓颉开发教程 鸿蒙仓颉

超越代码生成:AI如何重塑技术团队协作模式

qife122

团队协作 AI编程

使用OpenID、OAuth和Facebook Connect武装你的站点_SOA_胡键_InfoQ精选文章