如何使用 Shiro 来验证基于 cookie 或 Facebook 的用户?
在我的网络应用程序中,我没有用户注册/登录。我所拥有的是,当用户第一次访问该网站时,会根据 cookie 自动创建用户帐户。我如何使用 Shiro 为此目的来验证此类用户(并利用其其他 Web 安全功能)?
如果用户选择通过 Facebook connect 登录,那么我如何在这种情况下使用 Shiro?
In my web application, I do not have user registrations/login. What I have is the user account is automatically created when the user visits the site first time based on the cookie. How can I use Shiro for this purpose to authenticate such a user ( and also take advantage of its other web security features)?
If the user chooses to login via Facebook connect, then how can I use Shiro for this scenario?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好吧,在约翰告诉我链接的博客文章不起作用并且过了一段时间后,我重新修改了我的答案。
据我了解,Apache Shiro 不支持(在撰写本文时)OAuth,请参阅 SHIRO-21 和 SHIRO-119 以及对它们的评论。
有两个库可以简化 OAuth,Scribe 和 pac4j。
请务必阅读 Facebook OAuth 2.0 和 服务器端身份验证)。如果您想让您的网站能够使用 OAuth 2.0,那么您必须按照链接上的指南进行操作。
还有提到的 博客文章 或者您可以使用 Spring security 和 Spring 社交,请参阅 使用服务提供商帐户登录。
Ok, after JohnS told me that the linked blog post doesn't work and some time passed by, I reworked my answer.
In my understanding, Apache Shiro doesn't support (at the time of this writing) OAuth, see SHIRO-21 and SHIRO-119 and also the comments on them.
There are two libraries which simplifie OAuth, Scribe and pac4j.
Please make sure to read Facebook OAuth 2.0 and Server-Side Authentication). If you want to enable your site to use OAuth 2.0 then you have to follow the guide on the links.
There is also the mentioned blog post and alternatively you can use Spring security and Spring social, see Signing in with Service Provider Accounts.