AUTH,登录和退出 fat free 框架以及处理会话和保护页面

AUTH, logging in and out of fat free framework and handling sessions and securing pages

该文档并没有过多讨论 general.In Symfony 中的登录和注销以及处理安全性,您可以通过 YML 文件保护您网站的页面。 F3有这样的东西吗?

保护页面和处理登录用户的推荐方法是什么?我喜欢基本的 Auth,但它不是很灵活,而且注销似乎更棘手。所以我决定为 login/logout 设置一个表格。

我本以为 Auth 会自动创建一个会话,但据我所知它不会。那么这是否意味着我需要手动完成?

此外,如何阻止未经身份验证的访问者访问该站点?我是否需要在每条路线中添加 SESSION 检查?

使用 F3 的自由在于您 can/must 自己实现。 您在这里有多种选择,或者如果您的项目需要,也可以创建一些其他创造性的解决方案。随附的 Auth 插件当然不会创建 SESSION,因为它不知道您是想使用 SESSION 来跟踪您的用户还是使用其他解决方案(cookie、JWT 等)。

因此,在大多数情况下,您需要创建一个 Auth 控制器,您可以在其中检查用户是否登录 - 此处您可能会使用 Auth 插件并根据需要创建 SESSION。从那里你有几个其他选择..仅举几例:

  1. 使用一个基本控制器,您的其他控制器将扩展(或特征)并在那里添加一个 beforeroute,您将在其中检查用户是否已登录并允许访问该资源。

  2. 检查前端控制器中的用户权限(index.php),用户没有访问权限的路由不要注册。

  3. 使用第 3 方插件添加对路由的访问检查,即 f3-access

  4. 使用另一个 middleware router 预先发送当前请求并同时向多个路由添加身份验证检查