2

假设您在网站 www.example.com 上有用户 A 输入的私人数据。

用户 A 想要让他的朋友 B 通过输入他的电子邮件地址并单击“共享”来访问数据。我们可以通过电子邮件发送的单击 URL 让用户 B 安全访问该页面吗?(假设我们可以安全地发送电子邮件)

如果我们发送一封带有链接 www.example.com/key=some_unique_secret_key 的电子邮件,那么当 B 点击它时,它将被记录在浏览器的历史记录中——这很糟糕。

如果我们发送一封带有链接 www.example.com/key=some_public_unique_key 的电子邮件以及电子邮件正文中的 PIN,我们会为用户 B 创建开销。他必须查找一些 PIN 并输入它才能访问资源.

如果我们发送一个 https 链接https://www.example.com/key=some_unique_secret_key,当用户 B 点击该 url 时创建一个会话,并将他重定向到没有密钥的 url。这可以在不使用密钥创建历史条目的情况下完成吗?

有没有办法安全地做到这一点而不使用户 B 访问页面变得麻烦?

4

1 回答 1

0

您无法控制浏览器的行为。用户可以简单地为链接添加书签。因此,侵入性最小的方法是给唯一密钥一个时间限制。限制后,密钥无效,链接可以简单地重定向到带有适当通知的页面。

您还选择通知链接的创建者(用户 A)他们的过期链接仍在访问中,他们可以重新生成链接并将其发送给他们的朋友。

于 2012-08-30T19:19:20.460 回答