0

我有一些事情在我的脑海里,我想我会问这里的退伍军人。我正在使用 Razor 语法和 WebMatrix 创建一个网站。我目前正在实现一个用户登录系统。所以我的问题是:

  1. 在 WebSecurity 中,生成令牌时(用于创建新帐户或恢复密码等),该令牌是否为公钥?它可以通过不安全的网络或电子邮件安全地通过电子邮件发送给用户吗?进一步加密此令牌是一种好习惯(或有用)吗?

  2. 我已将我的安全页面设置为不在网络浏览器上缓存,即用户使用密码登录后访问的页面。我认为这是必要的操作,因为当用户注销时,我不希望用户按下浏览器的后退按钮并再次查看受保护的页面。因此,我将所有安全页面的到期时间设置如下:

    Response.Expires = -1;
    Response.Cache.SetNoServerCaching();
    Response.Cache.SetAllowResponseInBrowserHistory(false);
    Response.CacheControl = "no-cache";
    Response.Cache.SetNoStore();
    

我上面的问题是,如果我将页面设置为立即过期,浏览器不会缓存任何内容并在每次用户访问时重新加载页面,这是否意味着浏览器甚至不会缓存链接的样式表、脚本文件和图像? 我已将图像设置为预加载,以便网站的演示能够顺利进行;网页的立即到期会导致这些图像和所有内容在每个页面上一遍又一遍地加载吗?

谢谢。

4

1 回答 1

1
  1. 它不是“公共令牌”,因为任何可以访问该令牌的人都可以使用它来重置用户的密码并登录。所以它确实需要安全地发送,并且重置链接应该需要 SSL。

  2. 不会,特定页面的缓存过期设置不会影响其他内容的缓存。您可以使用 IIS 管理器或在 web.config 中设置静态内容的缓存策略/标头。

于 2012-09-26T06:16:39.877 回答