2

我不知道我必须做什么才能解决这个问题,在搜索了这个网站之后,看起来我可以在这里得到答案。

我在一个客户的网站上工作。他是一名营销人员,他拥有数字产品,并且允许免费下载其中的一些产品。

在他们点击下载后,我会向他们发送一封电子邮件,其中包含下载链接。

我的问题是:如何加密此链接以使文件位置保持隐藏?这些文件通常是视频、mp3 或 pdf 格式。

4

2 回答 2

2

如果仅通过不公开其 URL 来保护文件,则这不是良好的安全实践(通过隐蔽实现安全),尤其是在启用目录浏览的情况下。但是,您可能无法重新设计他们的网站。

最好的方法是向它们颁发某种形式的令牌或用户名(输入网页或在 URL 上提供),由 Web 服务器验证,如果成功,则开始下载。几点考虑:

  • 这些令牌(实际上是密码)应随机生成(例如通过密码学标准随机数生成器)。
  • 令牌的哈希值存储在服务器上(比如使用 PBKDF2)。
  • 令牌应该超时。请记住,发送给客户的电子邮件没有加密,可以被许多人截获或查看。同样,除非通过 SSL 访问该站点,否则它们也会以未加密的方式发送到该站点。
于 2012-09-24T13:56:30.183 回答
1

您不能加密 HTML 链接。根据定义,浏览器需要知道将用户点击链接发送到哪里。即使您确实混淆了 HTML 中的链接,初级安全分析师也可以使用 Paros 等代理绕过这种“安全”机制。

您需要做的是在授权用户查看资源(下载客户的文件)之前对用户进行身份验证以访问您的客户站点。以编程方式限制用户只能查看/下载他们应该被允许访问的内容。

于 2012-09-24T13:51:36.943 回答