3

我想知道 - 你们中的任何人实际上使用 System.Security.Permissions 命名空间中的各种类吗?我主要开发桌面/服务器端组件(即,没有 Web),一般假设是 FullTrust 始终可用,并且在不是这种情况的环境上不进行测试。除了 MS 源代码(EnterpriseLibrary 等)之外,我还没有看到使用上述结构的实际使用中的源代码。

这是普遍现象,还是我们是例外?我当然知道,不做这种测试对我们来说是个问题……

4

4 回答 4

3

我大量使用 PrincipalPermissionAttribute 来要求用户从 Thread 的 Principal 获得必要的访问权限(使用角色)——在我的业务代码中节省了大量手动检查(显然 UI 也应该检查并禁用按钮等——这只是在后端仔细检查)。

我发现基于 Principal 的安全性非常通用,尤其是使用自定义 Principal 时。但我不使用CAS的东西。

于 2008-10-04T08:51:39.597 回答
3

当用户通过 Internet 直接在服务器上运行代码时,.NET 代码访问安全性更加相关,在这种情况下,他们不一定相信它会自动执行诸如访问文件系统之类的事情。不过,我不知道有谁让他们的代码像这样可用。

于 2008-10-04T08:32:20.790 回答
1

如果您使用 ClickOnce 部署桌面应用程序,那么安全沙箱就可以发挥作用。

于 2008-10-04T08:11:33.280 回答
1

我从未见过有人使用许可、断言功能。

我怀疑许多开发人员实际上并没有意识到该功能。

我认为限制对危险函数的调用可能很有用。

这将取决于你在做什么,但谁想让部署比现在更复杂?

于 2008-10-04T08:19:19.817 回答