【问题标题】:Is there a way to ensure that an ASP.NET application is (only) running on the HTTPS protocol?有没有办法确保 ASP.NET 应用程序(仅)在 HTTPS 协议上运行?
【发布时间】:2010-10-29 08:39:22
【问题描述】:

我想知道是否有办法确保 ASP.NET 应用程序只能使用 HTTPS 协议运行

我可以接受任何可以解决问题的代码(也许是防御性编程措施?),或者可能是一些可以完成工作的 IIS/Web 服务器设置。

【问题讨论】:

  • 如果您错过了我的编辑,您还可以采取防御性编程措施。 Request.IsSecureConnection
  • 我抓到了,感谢编辑,确实保证了代码库只能在https协议上执行。

标签: asp.net http iis https


【解决方案1】:

IIS 绝对允许您要求使用 HTTPS。指令are here

编辑:我不得不去挖掘它,但还有 Request.IsSecureConnection 用于防御性编程。

【讨论】:

  • 谢谢!这正是我想要的!
  • FTA:8. 如果您希望网站、文件夹或文件需要 SSL 通信,请单击需要安全通道 (SSL)。
【解决方案2】:

leastprivilege.com 上有一个不错的 article,其中包含一些很好的信息和一个关于此主题的辅助实用程序类,位于 leastprivilege.com

【讨论】:

    【解决方案3】:

    在 IIS 级别强制执行 SSL 的唯一问题是用户收到丑陋的 403.4 页面错误

    “该页面必须通过安全通道查看”

    为了使转换无缝,如果用户不通过 SSL 生成请求,您可以使用 Request.IsSecureConnection 将用户重定向到安全站点。

    【讨论】:

    • 在 IIS 看到请求之前,您可以执行一些基本的网络设置来重定向到 HTTPS。
    猜你喜欢
    • 2020-07-21
    • 1970-01-01
    • 1970-01-01
    • 2019-05-07
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多