我正在编写一个基于 rest 的 api,用于服务器之间的通信,并在 Microsoft 的 mvc 中实现它的某些部分。
我想确保传入的请求是:
- 通过 https
- 使用有效的 ssl 证书签名
- 仅限于已知的服务器列表; IE。证书发给了我的某人 批准的白名单
在 Msoft MVC/IIS 堆栈中,实现这种系统的预定义方法或模式是什么?
最佳答案
coming over https
您可以阻止 IIS 服务端口 80(非 ssl)或使用 RequireHttpsAttribute .
signed with a valid ssl certificate
当浏览器访问网站时,浏览器不使用证书(99.99% 的时间)。如果您希望请求包含证书,它被称为 client certificate .
restricted to a known list of servers; ie. the certificate is issued to someone on my approved whitelist
什么是已知服务器列表?如果这是一个 IP 地址范围,那么您可以使用 IP Security .否则你的问题就太模糊了。
关于c# - 使用 Microsoft 的 MVC 时,如何对传入请求强制执行 TLS/SSL 双向身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21638230/