0

我目前正在为登录用户编写一次共享功能,以将一次性链接发送给另一个人(没有先前的用户帐户)。

目前,我有一个基本控制器,它验证用户/密码凭据,并处理身份验证,我的所有控制器都从该基本控制器扩展

为了处理一次性共享,我:

  • 生成唯一标识
  • 在数据库中插入日期字段设置为 NULL 的 id
  • 向用户发送一个指向控制器的链接,该控制器将唯一 ID 作为参数
  • 访问链接时,如果唯一 ID 存在并且日期为 NULL,那么我将向用户显示正确的视图并将日期字段设置为当时恰好是 TIMESTAMP。

这行得通,但是...

我有另一个控制器(/media),其任务是从安全路径中检索图像,并将其作为图像输出。在一次性视图中,我访问的图像如下:

<img src="/media/image-id" />

因为该控制器从处理登录的基本控制器扩展而来,所以没有帐户的一次性用户被拒绝访问。

我不想失去这一级别的安全性,但我需要有一种方法来允许一次性用户访问内容。

  • 我应该采取什么方法来规避一次性用户的控制器安全性?

感谢您的任何见解!

S。

4

1 回答 1

0

如果不了解您是如何组织基本控制器或从其扩展的控制器,这很难说。我们真正能做的就是猜测。您是否尝试过创建一个允许用户向基本控制器进行身份验证的临时会话?我的意思是,设置一个会话,根据链接是什么来限制他们的访问?这样,您的安全系统仍在使用中,您无需进行任何黑客工作。

于 2012-10-02T13:47:22.600 回答