【发布时间】:2010-11-09 14:05:41
【问题描述】:
刚刚创建了一个带有一些自定义 Web 部件的 WSS 站点。但我收到一个错误:...没有信任级别。我从虚拟服务器的 web.config 文件中编辑了 safecontrols 部分,但无济于事。
【问题讨论】:
标签: sharepoint wss web-parts
刚刚创建了一个带有一些自定义 Web 部件的 WSS 站点。但我收到一个错误:...没有信任级别。我从虚拟服务器的 web.config 文件中编辑了 safecontrols 部分,但无济于事。
【问题讨论】:
标签: sharepoint wss web-parts
Web 部件在 ASP.NET 代码访问安全模型下运行。它们必须受到信任并被标记为安全控件才能执行。
有两种推荐的方法来解决这个问题:
部署到全局程序集缓存 (GAC)。这既快速又简单,但也意味着您的代码在服务器上完全受信任。服务器上的任何其他代码都可能执行您的类中的方法,这可能会产生安全风险。
部署到 Web 应用程序 bin 文件夹并编写代码访问安全文件。这使您可以保护您的代码以完全信任(甚至进一步限制)执行。它也只能在 SharePoint Web 应用程序中执行。缺点是这需要更多时间来设置。在Microsoft's site 和plenty more on the web 上有关于此的信息(some of which 可能比 MS 提供的更有帮助)。
(顺便说一句,切勿将您的 Web 应用程序设置为完全信任 web.config。这意味着任何任意代码都可以在服务器上执行任何操作 - 存在严重的安全风险。)
【讨论】:
我有一个基本的 Web 部件解决方案,它可以在默认信任下正常工作。但是,一旦我将 cas 策略添加到解决方案 manifest.xml(我将解决方案部署到不再运行的网站集),它就会给出 SharePointPermission denied 错误。为什么会这样?
【讨论】: