我目前正在尝试了解用于沙盒化 WinRT 应用程序的 AppContainer 背后的机制。我知道 AppContainers 有自己的完整性级别,可以阻止对具有更高完整性级别的资产的任何读取和写入尝试。但是,为什么这些应用程序不能访问以相同完整性级别运行的其他应用程序的数据呢?
当应用程序获得相应的功能时,对对象的访问如何工作?例如,我假设相机没有标记为"appcontainer"完整性级别。因此,应直接阻止在 appcontainer 中运行的应用对它的任何访问。但可以声明相机功能,应用将能够访问相机。这怎么可能?SID 中表示的功能能否以某种方式"扩展"应用的完整性级别?
提前感谢!
但是可以声明相机功能,应用程序将是 能够访问相机。这怎么可能?可以 能力 在 SID 中表示的以某种方式"扩展"了 .app?
根据博客Windows 8应用程序容器安全说明 - 第1部分。有 2 组 SID 常量:应用容器 SID 常量和功能 SID 常量。这些定义生成的 SID 是否具有以下功能:作为 Internet 客户端、服务器(或两者)、访问图片、音乐、文档、共享证书或可移动存储。