UWP安全本地存储

时间:2019-05-13 12:58:51

标签: c# windows uwp windows-10 windows-10-universal

在UWP中使用local storage时,一旦发布该应用程序,安装该应用程序的用户是否可以篡改经典桌面或命令行中保存的设置?

在我看来,这很容易做到。有没有一种方法可以在不使用远程服务和加密的情况下在应用程序内安全地存储设置和数据?换句话说,是否有系统API允许这样做?

例如,Store-Managed Consumables允许安全地管理应用内商品。但是,一般设置似乎没有任何相似之处。如何存储产品或应用内键和商品的随机生成的ID?

2 个答案:

答案 0 :(得分:1)

要保护静态数据,可以使用DataProtectionProvider API。它将阻止临时用户查看您的数据,如果他们进行了修改,则您的应用将无法对其进行解密。

答案 1 :(得分:0)

  

是否可以在不使用远程服务和加密的情况下安全地在应用程序中存储设置和数据?

根据您的要求,您可以使用漫游数据来存储应用设置数据,只要可以访问,该应用的漫游数据就可以在中使用用户在所需的时间间隔内从某台设备访问。

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;

有关更多详细信息,请参阅此document