【问题标题】:Simplest way to Force HTTPS during Page_Init [duplicate]在 Page_Init 期间强制 HTTPS 的最简单方法 [重复]
【发布时间】:2013-03-19 15:03:19
【问题描述】:

在我网站的极少数页面上,我想确保它们只能通过 HTTPS 连接访问。实现这一目标的最佳方法是什么。我看到的所有示例似乎都在尝试为整个站点执行此操作。

我希望在Page_InitPage_Preload 上找到一种方法来实现这一点。

并重定向到 Https 版本

【问题讨论】:

  • 在尝试 HTTP 时是否要拒绝访问?还是要重定向到 HTTPS 版本?
  • 请重定向版本
  • 我认为这包括在:stackoverflow.com/questions/5305443/…
  • 是的,谷歌似乎没有发现:(

标签: c# asp.net https security httpcontext


【解决方案1】:

您可以访问请求的IsSecureConnection 属性并重定向:

if (!Request.IsSecureConnection) {
    Response.Redirect(...);
}

您可能有对要重定向到的页面的引用,或者您可以从 Request.Url 部分构造一个 https Uri,等等,但您可以在上面进行检查。

【讨论】:

    【解决方案2】:

    我建议您使用 HTTP 严格传输安全性。

    更多详情请看这里:

    https://www.owasp.org/index.php/HTTP_Strict_Transport_Security

    有任何问题,请告诉我。

    谢谢 法比奥 @fcerullo

    【讨论】:

      猜你喜欢
      • 2015-12-07
      • 1970-01-01
      • 2014-02-14
      • 1970-01-01
      • 1970-01-01
      • 2014-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多