使用Microsoft的MVC时,如何通过传入请求的方向身份验证强制执行TLS/SSL?

blu*_*lds -2 c# ssl asp.net-mvc-4

我正在编写一个基于rest的api,用于在服务器之间进行通信,并在microsoft的mvc中实现它的某些部分.

我想确保传入的请求是:

  • 来自https
  • 使用有效的ssl证书签名
  • 限于已知的服务器列表; 即.证书颁发给我批准的白名单上的某人

在Msoft MVC/IIS堆栈中,有什么用于实现此类系统的预定义方法或模式?

Eri*_*ips 5

来自https

您可以阻止IIS提供端口80(非ssl)或使用RequireHttpsAttribute.

使用有效的ssl证书签名

当浏览器访问网站时,浏览器不使用证书(99.99%的时间).如果您希望请求包含证书,则将其称为客户端证书.

限于已知的服务器列表; 即.证书颁发给我批准的白名单上的某人

什么是已知的服务器列表?如果这是IP地址范围,则可以使用IP安全性.否则你的问题就是模糊不清.