Mag*_*sol 4 php oauth opensocial myspace
我正在研究一个与power.com不太相似的网络项目,我试图在一个网站下统一几个不同的社交网站,允许用户在系统中注册一次,然后添加因为系统的许多个人社交网络帐户(Facebook,MySpace,Orkut等)都可以处理,允许他们在一个地方浏览各自的个人资料信息.
简单地说,我似乎无法找到一种方法来将任意用户身份验证到他们的社交网络帐户中.
我一直在研究OpenSocial规范,以及OpenSocial PHP客户端项目,但我似乎错过了一些东西,因为一切看起来都是循环依赖的.
我的第一个问题是,出于测试目的,我有一个MySpace消费者密钥和消费者秘密,但每当我尝试使用MySpace执行三方认证时,没有选择以其他人身份登录.此外,它执行外部重定向,这有点不受欢迎(作为这个最终社交网络"门户"的用户,我不想每次添加新帐户时都要经历重定向过程).
我将如何以编程方式验证任意用户并允许他们访问其帐户信息(最好不使用外部重定向)?
其次,2脚认证需要userId
(通常是任意整数)来标识任意用户以检索信息.但是,当我输入MySpace OpenSocial ID以及给定的消费者密钥和消费者密钥时,我会收到401 Access Denied错误.此外,为了将来使用此ID,似乎我需要首先验证用户...但该身份验证似乎需要ID.
我很确信我错过了一些微不足道的东西,但是因为我的生活无法弄清楚它是什么.非常感谢帮助!
从技术上讲,这不是我的答案,但OpenSocial的开发人员向我提供了有关我的问题的以下信息(强调我的):
三脚架OAuth围绕重定向建立回到您正在验证的站点,并且没有办法避免它.这不是最方便的体验,但允许用户与您的网站共享他们的数据,同时保持他们的密码私密. 任何要求用户将MySpace密码输入网站表单的设计都被认为是反模式,应该避免. 您可以在弹出窗口中尝试重定向,以使用户的体验不那么刺激(目前PHP客户端不会那么容易,但如果您在opensocial-client-libraries @ googlegroups上进行了跟踪. com有人可以帮助你完成这个过程).
关于无法更改用户,我认为MySpace在您的情况下正在检查MySpace cookie并预先填充您的帐户信息. 如果您是访问该网站但未登录MySpace的用户,则应获得完整的用户名/登录框组合.还应该有一个按钮或链接说"我不是这个用户"并使用其他凭据登录.
对于2-legged,您需要在要访问其数据的任何用户的配置文件上安装与使用者密钥/密钥相关联的应用程序.2-legged主要面向当前在容器上运行社交小工具并希望通过小工具渲染为带外应用程序用户访问社交数据的开发人员. 在这种情况下,应用程序服务器已经具有用户的OpenSocial ID(来自已签名的makeRequest),并且用户已经在其MySpace配置文件上安装了该应用程序).
如果您想了解更多信息,请参阅http://wiki.opensocial.org/index.php?title=OAuth_Use_Cases中的大部分内容.
从本质上讲,这使得在外部应用程序上使用双腿认证成为不可能; 明确地设计了两条腿,不适用于这种情况.此外,似乎power.com确实采用了让用户提供其实际的Orkut/MySpace/etc凭证的反模式,因此可以解释这一点.
清除我的cookie可以通过MySpace验证我的身份.但是,我接着提出了另一个关于Orkut身份验证如何工作的问题,因为它似乎不支持3-legged身份验证.这是我收到的回复:
Orkut有兴趣支持这一点,因此您将能够允许用户在将来"正确"地与您的应用程序共享他们的信息.
相应的两条腿应用程序需要将当前查看器的OpenSocial ID转发回您的服务器,可能还有您自己生成的授权令牌,以便您可以将orkut上的用户会话与您自己服务器上的会话相关联. 老实说,它可能不足以支持独立的登录系统.
从本质上讲,不,Orkut真的不能连接到外部应用程序(至少,还没有),而不诉诸反模式.
如果有人对此主题有任何进一步的信息,请随时分享!
归档时间: |
|
查看次数: |
1743 次 |
最近记录: |