gpt4 book ai didi

c# - 如何在 ASP.NET Core 中获取 TLS/SSL 相关信息?

转载 作者:太空狗 更新时间:2023-10-29 22:00:11 26 4
gpt4 key购买 nike

我想获得有关 ASP.NET Core MVC Controller 中当前 TLS/SSL 请求的更多信息。

using Microsoft.AspNetCore.Mvc;

namespace WebApp.Controllers
{
public class HomeController : Controller
{
public IActionResult About()
{
if (HttpContext.Request.IsHttps)
{
// How to get more information about the transport layer ?

ViewData["Message"] = "Connection via TLS/SSL - ... missing details ...";
}

return View();
}
}
}

有没有办法访问使用的 TLS 版本、密码等属性?

我知道这在 ASP.NET MVC 中是不可能的,如 Check ssl protocol, cipher & other properties in an asp.net mvc 4 application .也许 Kestrel 的新框架提供了我目前无法找到的此类信息。

最佳答案

您可以使用 HttpContext 中的 Features 属性获取这些值。如果你打电话:

var tlsHandshakeFeature = request.HttpContext.Features.Get<ITlsHandshakeFeature>();

ITlsHandshakeFeature将为您提供 TLS 版本(协议(protocol)属性)、CipherAlgorithm 以及许多其他信息。
您还可以获取 ITlsConnectionFeature这会给你证书。

关于c# - 如何在 ASP.NET Core 中获取 TLS/SSL 相关信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39014997/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com