如何使用Shiro验证基于cookie或facebook的用户?

ace*_*ace 11 apache security authentication facebook shiro

在我的Web应用程序中,我没有用户注册/登录.我所拥有的是当用户第一次根据cookie访问网站时自动创建的用户帐户.如何使用Shiro来验证此类用户(并利用其他Web安全功能)?

如果用户选择通过Facebook连接登录,那么我如何在这种情况下使用Shiro?

Chr*_*ipp 4

好吧,在约翰告诉我链接的博客文章不起作用并且过了一段时间后,我重新修改了我的答案。

据我了解,Apache Shiro 不支持(在撰写本文时)OAuth,请参阅SHIRO-21SHIRO-119以及对它们的评论。

有两个库可以简化 OAuth、Scribepac4j

  • Scribe 由GAEShiro使用,其中包括 scribe 和 Shiro 之间的桥梁。
  • Pac4J 由buji-pac4j使用,它是 Apache Shiro 的 Web 多协议客户端。链接页面上有一个可使用 Facebook 身份验证的演示,请参阅此处。我建议使用这个演示作为开始。

请务必阅读Facebook OAuth 2.0服务器端身份验证)。如果您想让您的网站能够使用 OAuth 2.0,那么您必须按照链接上的指南进行操作。

还有提到的博客文章,或者您可以使用Spring securitySpring Social,请参阅使用服务提供商帐户登录