共享SSL - 比使用OpenID更好还是更差?

时间:2009-07-23 02:15:09

标签: security authentication

我正在开发一个需要用户登录/注册的项目。我想避免设置私有SSL,因为我使用的是共享托管服务提供商,并希望在同一个计划中托管多个域(但由于私有SSL证书需要专用的IP,因此每个计划只能有1个证书......但仍想保护我的所有网站。

我在

之间进行辩论
  1. 求助于OpenID(虽然对于非技术受众,我在SO上发现的所有投诉都会进一步成倍增加)
  2. 使用我的主机的共享SSL(会在浏览器中弹出那些令人讨厌的证书警告,说明网站不匹配)。
  3. 什么似乎是更好的选择?或者你会建议远离两者,只是建议吮吸它并购买更多/更好的托管计划?

3 个答案:

答案 0 :(得分:1)

为什么不从头开始自己动手?如果可以从每个域访问您的数据库,则可以保留每个域都可以访问的一个用户存储。

您是否有特殊原因想要创建自己的用户模型?这很容易做,但是你可能还有其他一些因素让你倾向于我不知道的OpenId。

答案 1 :(得分:1)

根据我使用Google App Engine(及其身份验证系统)处理SO和相当简单的网站的经验,我会提出以下建议:

  • 请勿使用OpenID进行身份识别。它可以用于您自己的身份管理身份验证,但只要您尝试识别特定用户就会出现问题。
  • 令人惊讶的是人们会有多少开放ID,因此请准备好支持多个OpenID身份验证URL(绝对超过1个,可能超过2个)
  • 如果要求高安全性,请对OpenID保持警惕。许多人将使用他们通常仅用于低安全性任务的提供者(因此具有弱密码)。这个特殊的问题直接袭击了杰夫阿特伍德(他的账号因为这个错误而被盗)!
  • 为用户保持简单。如果您确实使用OpenID,请强调他们可能已经拥有的一个或两个提供商(例如Google),然后为通用提供商提供不再强调的选择。不要让更加注重头脑的用户考虑OpenID。
  • 除此之外,简单的“使用您的Google帐户登录”按钮效果非常好。我认为人们会发现使用谷歌帐户登录第三方网站会让人感到困惑,但实际上这对我们的.appspot.com域名来说并不是问题。

最重要的是,您不应期望您的用户更喜欢openid,但这可能是一种可接受的妥协。我不认为显示无效证书对许多最终用户来说是一个合理的选择。

当然,单独的证书选项是最干净的,但您必须确定这对于获得的价值是否真的值得。我是一个小气鬼,我会倾向于自己避免。 :)

答案 2 :(得分:0)

如果您使用共享SSL的URL,则不应该获得弹出窗口。这就是共享SSL的重点。当用户跳转到安全连接时,您是网站URL的标识。

在私有SSL方面,我会与您的托管服务提供商讨论您的选择。它们真的不那么昂贵(如果IE浏览器支持不好,即使是免费的)。我过去曾与共享提供商一起为您分配一个专用的IP用于SSL,只需支付一小笔额外费用(如2美元/月)。

对我来说,每年额外54美元(证书30美元+知识产权24美元)非常值得我和我的用户安心。