При использовании локальное хранилище в UWP, после публикации приложения, может ли пользователь, устанавливающий приложение, изменить сохраненные настройки с классического рабочего стола или из командной строки?
Мне кажется, что это можно легко сделать. Есть ли способ безопасного хранения настроек и данных в приложении без использования удаленного сервиса и криптографии? Другими словами, есть ли системный API, позволяющий это сделать?
Например, Расходные материалы, управляемые магазином позволяет безопасно управлять элементами в приложении. Однако для общих настроек, похоже, нет ничего подобного. Как можно хранить случайно сгенерированные идентификаторы для продуктов или ключей и элементов в приложении?
Я это понимаю, но для перехода в File Explorer к локальной или перемещаемой папке приложения и изменения файла требуется значительно меньше знаний, чем для отладки приложения без кода. Решение, которое я имею в виду, состоит в том, чтобы просто зашифровать файл или запись настроек. Я просто интересовался, можно ли это сделать через какой-то интегрированный API, о котором я не знал.





Is there a way to securely store settings and data within the app,without using a remote service and cryptography?
По вашему требованию вы можете использовать Роуминговые данные для хранения данных настроек приложения. Данные роуминга для приложения доступны в облако, если к ним обращается пользователь с какого-либо устройства в течение требуемого интервала времени.
Windows.Storage.ApplicationDataContainer roamingSettings = Windows.Storage.ApplicationData.Current.RoamingSettings;
roamingSettings.Values["exampleSetting"] = "Hello World";
// High Priority setting, for example, last page position in book reader app
roamingSettings.Values["HighPriority"] = "65";
// Composite setting
Windows.Storage.ApplicationDataCompositeValue composite =
new Windows.Storage.ApplicationDataCompositeValue();
composite["intVal"] = 1;
composite["strVal"] = "string";
roamingSettings.Values["exampleCompositeSetting"] = composite;
Для получения более подробной информации обратитесь к этому документ.
Пользователь все еще может вмешиваться в это из командной строки, если я не ошибаюсь. Я хочу скрыть сохраненную настройку от пользователя (даже если он опытный пользователь). Я могу использовать сертификат для шифрования настроек, но есть ли более простой способ, предоставляемый платформой?
Какую угрозу вы пытаетесь смягчить? Обратите внимание, что пользователь может просто подключить отладчик к вашей программе и возиться с ним во время выполнения...