我可以在没有服务器的情况下使用OpenID吗?

sie*_*nko 2 javascript openid client-side

我想编写一个JS应用程序,它将使用openid对用户进行身份验证.它将完成它的所有工作,然后将效果传递给某些父webapp.这里的问题是我不想使用任何类型的服务器 - 只是本地JS发送消息重定向和东西.我知道这很奇怪,但我写的应用程序是非常具体的并且需要它.所以问题是: - 它是否可能? - 有没有现成的解决方案?如果不可能的话,你能告诉我它会在什么时候失败吗?我已阅读OpenID规范,但我找不到这样的观点.

dec*_*eze 5

是的,它应该是完全可能的.

  • JS从OpenID提供程序获取令牌
  • 令牌保存在某处(例如cookie或HTML5本地存储)
  • JS重定向到OpenID登录
  • JS处理回调

这里没有任何东西可以阻止你这样做,除了它有点不正统并且完全没有安全性,就像任何纯粹的客户端登录系统一样.