说一下Windows Store的应用和沙盒机制
Windows Store应用(UWP应用)是微软Windows10/11的跨平台应用框架,默认安装在受系统保护的C:\ProgramFiles\WindowsApps目录,用户数据存储在用户配置文件中。UWP应用采用严格的沙盒机制,通过AppContainer技术实现文件、注册表和网络隔离,应用必须声明所需权限才能访问特定功能,所有敏感操作都需通过系统代理进程完成。这一机制既保障了系统安全,又实
·
1、什么是Windows Store应用
Windows Store应用也叫UWP应用,UWP 是 Universal Windows Platform 的缩写,中文译为 "通用 Windows 平台"。
UWP 是微软在 Windows 10 中引入的现代化应用开发框架,旨在实现:
- 跨设备统一:同一应用包可在 PC、手机、Xbox、HoloLens 等所有 Windows 10/11 设备上运行
- 安全沙盒:通过严格的权限控制和沙盒机制保障系统安全
- 现代 API:提供与操作系统深度集成的现代化开发接口
2、Windows Store应用安装到哪儿了
2.1 默认安装路径
Windows Store 应用(也称为 UWP 应用)默认安装在以下位置:
C:\Program Files\WindowsApps
这个目录包含所有通过 Microsoft Store 安装的 UWP 应用。
2.2 访问限制
- 权限限制:此目录默认对普通用户和系统管理员都隐藏,只有 SYSTEM 和 TrustedInstaller 拥有完全访问权限
- 查看方法:
- 通过 PowerShell 命令查看已安装应用。
- 通过
设置 > 应用 > 已安装的应用查看(不显示物理路径)
Get-AppxPackage | Select Name, PackageFamilyName, InstallLocation
2.3 用户数据位置
每个应用的用户数据存储在:
%LOCALAPPDATA%\Packages\[PackageFamilyName]
例如:
C:\Users\[用户名]\AppData\Local\Packages\Microsoft.WindowsCalculator_8wekyb3d8bbwe
3、什么是沙盒机制?
核心隔离原则
文件隔离
- 每个 UWP 应用只能访问自己的安装目录和用户数据目录
- 通过 AppContainer 技术实现进程级隔离
注册表隔离
- 使用虚拟化注册表:
HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel\SystemAppData
能力(Capabilities)模型
- 应用必须在
Package.appxmanifest中声明所需能力(如摄像头、位置等) - 用户安装时需授权这些能力
- 未声明的功能完全无法访问
关键沙盒技术
| 技术组件 | 功能描述 |
|---|---|
| AppContainer | 轻量级进程隔离环境,限制进程的访问权限 |
| Broker Process | 特权代理进程,代表应用执行需要更高权限的操作(如文件选择器) |
| Virtual File System | 虚拟文件系统,重定向对敏感路径的访问请求 |
| Package Dependency Graph | 确保应用只能访问自己依赖的库和框架 |
特殊访问机制
-
文件选择器(File Picker)
- 通过系统提供的 UI 让用户选择文件
- 应用只能获得用户明确选择的文件访问权限
-
协议激活(Protocol Activation)
- 允许应用注册特定 URI 协议(如
mailto:) - 通过协议激活时,应用获得临时上下文权限
- 允许应用注册特定 URI 协议(如
-
共享合约(Share Contract)
- 允许应用间共享内容,但需用户主动触发
网络隔离
- 默认禁止环回网络访问(localhost)
- 需要特殊声明才能访问本地网络
- 所有网络请求必须通过 Windows 网络栈
更多推荐

所有评论(0)