我有一个使用我们网站提供的功能之一的不同公司的用户列表。每当他们联系我们的业务组时,我们需要通过电子邮件向请求者发送一个 url,以便他们上传一些数据。所有这些外部用户都没有任何专用帐户。但是,我们不希望向他们提供静态链接,因为任何人都可以通过 Internet 访问该链接。我们希望生成动态链接。这是通常做的事情吗?是否有行业接受的方式来做到这一点?我们是否应该确保动态链接在一定时间后过期 - 如果是,是否有任何设计选项?
非常感谢!
我有一个使用我们网站提供的功能之一的不同公司的用户列表。每当他们联系我们的业务组时,我们需要通过电子邮件向请求者发送一个 url,以便他们上传一些数据。所有这些外部用户都没有任何专用帐户。但是,我们不希望向他们提供静态链接,因为任何人都可以通过 Internet 访问该链接。我们希望生成动态链接。这是通常做的事情吗?是否有行业接受的方式来做到这一点?我们是否应该确保动态链接在一定时间后过期 - 如果是,是否有任何设计选项?
非常感谢!
您可能有一个将令牌作为参数的静态 URL。例如。http://www.mycompany.com/exchange/<UUID>
或http://www.mycompany.com/exchange?token=<UUID>
。
UUID 可以在一个时间范围内有效,或者仅限于一次使用(一次访问或一次上传)。
通常, url 的参数而不是实际的 url 是动态的。基本上,您生成存储在某处的参数,通常在数据库中,并使用 url 和参数发送电子邮件。此 url 仅在有限的时间段内有效,并且可能仅对一个请求有效。
问题解答:
其他变体是在 Web 浏览器中使用该站点上存在的 cookie(当然,如果有的话)。
但是这个解决方案有一些缺点:
用户可以在不同的机器、不同的浏览器中打开链接。用户可以清除所有 cookie,或者当用户尝试继续授予的 URL 时,它们可以在上次访问您的站点后过期。在这些情况下,用户将无法访问您的页面。