设备的安全注意事项

更新:2007 年 11 月

.NET Compact Framework 存在若干重要且独特的安全注意事项:

  • .NET Compact Framework 当前不支持代码访问安全。在从 .NET Framework 全功能版(桌面版)转换应用程序时,应该移除下面的代码:

    • 安全权限对象。

    • 安全要求。

    • 任何证据,包括强名称。

    • 代码组。

  • .NET Compact Framework 类型不支持 AllowPartiallyTrustedCallersAttribute 属性。在 .NET Framework 全功能版的类库中,许多成员引用主题都包含警告,指出成员需要完全信任直接调用方。由于 .NET Compact Framework 不支持 AllowPartiallyTrustedCallersAttribute,所以默认情况下将授予对所有库的无限制访问。在以后的 .NET Compact Framework 的版本中,将要求特定的权限以限制对高度可信功能的访问。因此,安全策略将在适当的地方授予代码特定的权限。

  • 设备在设计上可能接受系统软件更新,所受的安全控制也可能超出了 .NET Compact Framework 的范围。

  • 如果设备支持的本机代码不受信任,则无法实现完全的安全性。安全强制仅对可验证的类型安全代码有效。托管代码和非托管代码之间的界限是对托管代码的严重安全威胁。

  • 在 .NET Compact Framework 1.0 版中,运行库不限制对本机代码的平台调用访问。

多个设备制造商提出了跨平台问题:

  • 原始设备制造商 (OEM) 确定设备的平台安全级别和安全策略,还可以为安全管理员提供用于授予访问的自定义权限。

  • 强名称证据在不同的平台间可能不兼容,并且会影响应用程序的性能。不过,每个平台都有安全绑定策略,这可以缓解大多数应用程序要求标准程序集提供强名称证据的需要。

  • 独立软件开发商 (ISV) 可以从自己的代码内强制执行一组安全要求,而不需要更改设备的安全策略。

安全策略因设备的类型和使用方式而异。.NET Compact Framework 适应跨设备可移植性,同时维护强大的安全操作。

请参见

概念

.NET Compact Framework 的安全目标