DataProtection PersistKeysToFileSystem не создает ключ (Windows 10 на MacBook Pro)
Я разрабатываю решение.NET Core в Visual Studio 2015 на модели MacBook Pro 2016 года, используя bootcamp.
На данный момент мы работаем на 1.0.0-rc1-final
из SDK. Мы работаем над обновлением, но это займет некоторое время.
У меня есть реальная проблема с платформой защиты данных. Я настраиваю Data Protection для сохранения ключей в локальной файловой системе, используя:
services.ConfigureDataProtection(configure => configure.PersistKeysToFileSystem(new DirectoryInfo(_configFolderPath)));
Проблема в том, что когда я запускаю решение и делаю вызов приложения, ключ шифрования не создается. Мой коллега, который работает на ноутбуке ПК (мы оба работаем под управлением Windows 10), запускает одну и ту же кодовую базу (из одного коммита) и для него создается ключ.
Я не получаю ошибок, что так всегда. Это проблема с тем, что оборудование MacBook не может быть использовано для создания ключа, или кто-то сталкивался с этой проблемой?
2 ответа
Это странный способ настроить его. Как правило, мы ожидаем, что вы настроите его при настройке.
Пытаться
public void ConfigureServices(IServiceCollection services)
{
services.AddDataProtection()
.PersistKeysToFileSystem(new DirectoryInfo(_configFolderPath));
}
К тому времени, когда он входит в коллекцию сервисов, уже слишком поздно что-то менять, и именно тогда начинает действовать ваш подход к настройке.
Глядя на код tveitan и осознавая, что он во многом похож на мой, и я перехожу на RTM, я могу подтвердить, что то, что говорит blowdart, работает как минимум с новым пакетом.