gpt4 book ai didi

c# - 这是什么 ASP.NET Core 日志消息 : Microsoft. AspNetCore.DataProtection.KeyManagement.XmlKeyManager

转载 作者:行者123 更新时间:2023-12-03 16:26:45 27 4
gpt4 key购买 nike

我在每个应用程序启动时都有这个。

有谁知道这是从哪里来的?

info: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[0] User profile is available. Using '/Users/thomas/.aspnet/DataProtection-Keys' as key repository; keys will not be encrypted at rest.


// run the web host
var PathToContentRoot = Directory.GetCurrentDirectory();
var Host = WebHost.CreateDefaultBuilder()
.UseKestrel()
.UseContentRoot(PathToContentRoot)
.UseStartup<WebStartup>()
.UseNLog()
.Build();

我对“数据保护”、“ key ”等一无所知,也不想要任何形式的安全功能。

ConfigureServices 部分中的代码是:
        // find all controllers
var Controllers =
from a in AppDomain.CurrentDomain.GetAssemblies().AsParallel()
from t in a.GetTypes()
let attributes = t.GetCustomAttributes(typeof(ControllerAttribute), true)
where attributes?.Length > 0
select new { Type = t };

var ControllersList = Controllers.ToList();
Logging.Info($"Found {ControllersList.Count} controllers");

// register them
foreach (var Controller in ControllersList)
{
Logging.Info($"[Controller] Registering {Controller.Type.Name}");
Services
.AddMvc()
.AddJsonOptions(Options => Options.SerializerSettings.ContractResolver = new DefaultContractResolver())
.AddApplicationPart(Controller.Type.Assembly);
}

// add signalR
Services.AddSignalR();

这样做是为了允许使用来自外部程序集的 Controller 。

最佳答案

根据您使用的 ASP.NET 功能,Core Data Protection可以设置中间件并将其添加到依赖注入(inject)容器中。
这提供了一种存储敏感数据的机制。根据您在什么环境中运行,这些敏感数据将存储在不同的位置。在您的情况下,您收到的消息是它存储在用户配置文件(系统上的文件夹)和纯文本中(我假设因为您在 Linux 上运行,因为它们默认在 Windows 上被加密)。这个article对存储敏感数据的默认位置有很好的描述。
在您的情况下,我怀疑是使用 SignalR 导致添加核心数据保护中间件。添加它的另一个常见原因是调用

IServiceCollection.AddAuthentication

关于c# - 这是什么 ASP.NET Core 日志消息 : Microsoft. AspNetCore.DataProtection.KeyManagement.XmlKeyManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52424618/

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