4

简短的答案已经给出。我正在寻找长答案。子问题:

  • 完全信任的应用程序会抛出 SecurityException 吗?如果是,在什么情况下?
  • 什么是“CRL 安全设置”,它们在哪里,我有多少需要担心它们?
  • 在 eg 中捕获 ArgumentException 是没有意义的int.Parse("25")。我什么时候可以确定永远不会抛出 SecurityException?
4

2 回答 2

2

对于最完整的答案,我建议下载共享源转子并搜索SecurityException抛出 a 的地方。

这是一个下载站点:http ://www.microsoft.com/downloads/en/details.aspx?FamilyId=8C09FD61-3F26-4555-AE17-3121B4F51D4D&displaylang=en

以及一些样本发现:

  • HttpWebRequest.CheckResubmit, 如果Demand()onWebPermission失败
  • BaseConfigurationRecord.CheckPermissionAllowed, 如果Demand()对于 aConfigurationPermission(PermissionState.Unrestrictred)在某些情况下失败

(还有很多)

...

于 2011-04-06T15:12:33.940 回答
0

这不是一个全面的答案,但如果组成 Web 应用程序的文件的 NTFS 权限不允许访问针对运行 Web 应用程序的应用程序池的标识集,则完全信任的 ASP.net 应用程序将引发 SecurityException。你会得到一个非常令人困惑的异常,看起来应用程序没有完全信任,即使它确实如此。您根本无法保证永远不会抛出安全异常,因为它取决于环境而不是您可能编写的任何代码。例如,在两台不同的服务器上完全相同的代码,一个可能会抛出 SecurityException,而另一个可能不会。

于 2011-04-06T15:10:31.353 回答