使用Twitter oAuth安全登录 - 最佳实践

时间:2010-07-27 21:40:57

标签: php authentication twitter oauth token

我是oAuth的新手,希望使用Twitter(oAuth)构建一个Web应用程序进行身份验证。除了通过Twitters oAuth之外,没有其他登录方法。我正在寻找有关最佳实践的建议,以基于令牌保护网站。这是我的计划:

  • 用户从我的网站上通过Twitters网站进行身份验证
  • 为用户生成访问令牌
  • 通过Twitter API获取用户唯一的Twitter ID
  • 使用此ID在本地数据库中进行用户查找,并找到访问令牌(如果可用)。
  • 如果没有用户,请在用户表中创建新行并保存对用户。如果找到用户,请再次更新访问令牌用户记录。
  • 如果找到用户,则md5_salt twitterid并设置为cookie。
  • 如果用户重新访问,请根据Cookie
  • 查找用户

这听起来像是一种安全方法,还是使用md5 twitter id是一个坏主意?

感谢任何评论。

1 个答案:

答案 0 :(得分:0)

如果不确切知道您的客户/消费者应用程序正在做什么,很难判断这种方法是否“安全”。

我看到的一个问题是,一旦你有来自twitter的访问令牌,如果cookie被删除,你如何识别你的用户?或者您是否要求他们获得新的访问令牌?这意味着他们每次都必须登录并授权您的应用程序。

此外,您的应用的一个用户的访问令牌。可能被您的应用的其他用户窃取和使用。因为它就像密码一样工作,并且您没有身份验证来验证您的cookie保存访问令牌。

要回答您的问题,我不得不说使用oauth作为唯一的身份验证提供程序,无论您如何操作,都不是最佳做法。

为了确保客户端(消费者)应用程序和服务器(提供者)应用程序的安全,需要验证用户的身份。最简单的方法是使用用户名和密码存储在用户头中,而不是存储在某个地方......