我在ASP.NET Core 2.0中使用Microsoft.AspNetCore.DataProtection
进行数据保护。对于默认设置,我在Startup.cs
文件中添加了以下代码
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddDataProtection().ProtectKeysWithDpapi();
...
...
}
但是该代码引发了一个错误:
InvalidOperationException:找不到" Ixmlrepository"实例。设置" IXMLENCRYPTOR"实例时,还必须设置相应的" Ixmlrepository"实例。
我是否错过了此实施中的某些内容?
您指定了如何 Encrypt 键键(IXmlEncryptor
的Windows DPAPI实现),但您没有指定 persist persist 键(IXmlRepository
)。有多种选择可以持续键,例如文件系统,注册表或云中的某些远程位置。
尝试使用PersistKeysToFileSystem()
或PersistKeysToRegistry()
。我建议您查看有关ASP.NET核心数据保护配置的文档。