0

我现在遇到了一些麻烦。我有一个图片库,我将图片存储在一个文件夹中。现在,如果我想在不进行任何处理的情况下访问图像,我必须将文件夹保留在我可以直接访问它的位置。SomeFolder/imageset/image.jpeg但是不能彻底保护它。第二,如果我将图像文件夹保存在文件夹中,App_Data那么我必须使用HttpHandler. 这个处理程序造成了很多混乱,因为必须生成很多拇指和其他处理。这使得系统响应非常慢..我应该怎么做才能保护用户相册并让它变得活泼..

4

2 回答 2

1

根据@Nipun 建议使用目录特定的 Web.config 文件来授权访问,您可以执行以下操作。

  1. 创建一个文件夹 /Root/Images/Albums 并添加一个 web.config 文件,其中包含以下内容:

    <system.web>
      <authentication mode="Forms"/>
          <授权>
          <拒绝用户="?"/>
      </授权>
    </system.web>
    
  2. 每次创建新的用户特定相册时,请在相册目录中使用用户名创建一个子文件夹,即。/图像/专辑/Stkedout/。并且还动态创建一个 web.config 文件,只允许该用户访问它。

    <system.web>
      <authentication mode="Forms"/>
          <授权>
          <deny users="Stkedout"/>
      </授权>
    </system.web>
    

如果您执行上述操作,那么其他人将无法看到彼此的图像。然而,这是一个我没有尝试过的概念。

于 2013-06-13T12:33:41.950 回答
1

大多数时候都会想到这个问题,如何保护图像。

仍然没有完整的证明技术,Facebook 在保护图像方面做了一些事情。

如果您有机密图像,则可以将其存储在数据库中,该数据库可通过角色权限访问。

以及如果您只需要文件夹,则将其授权给 Web.config 中的特定角色。

(我假设用户角色实现在那里)

于 2013-06-13T12:11:19.477 回答