WSPBuilder,配置存储和部分受信任的呼叫者
-
13-09-2019 - |
题
有没有人使用WSP生成器打包使用配置存储(HTTP的溶液://www.codeplex。 COM / SPConfigStore)和部署到web应用程序的bin目录?
当我尝试referecne配置存储在隐藏文件我的代码,我得到这个例外...
System.Security.SecurityException:即组件不允许部分可信呼叫者
我已经添加了部分受信任的调用方属性到我的项目
[assembly: AllowPartiallyTrustedCallers()]
和的SharePoint权限上我的方法的属性
[SharePointPermissionAttribute(System.Security.Permissions.SecurityAction.Demand, Impersonate = true)]
[SharePointPermissionAttribute(System.Security.Permissions.SecurityAction.Demand, ObjectModel = true)]
不过,这似乎并没有做任何事情,我也指定用正确的IPermission一个自定义的CAS策略
<IPermission class="Microsoft.SharePoint.Security.SharePointPermission, Microsoft.SharePoint.Security, version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" version="1" ObjectModel="True" UnsafeSaveOnGet="True" Unrestricted="True" />
和仍然没有成功,想必其他人都这样做,我必须失去了一些东西。
我使用WSP生成器版本1.0.5。
解决方案
您已经添加了[装配:AllowPartiallyTrustedCallers()]到您的装配,使你的程序集将允许部分信任的调用方来调用它。 但ConfigStore本身不具备该属性。
是否有可能你的DLL添加到GAC? (简单的办法)。 或添加[组件:AllowPartiallyTrustedCallers()]的ConfigStore项目以及..
其他提示
你的组件添加到web.config SafeControls部分?
<SafeControl Assembly="Microsoft.Office.Server.Search, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.Office.Server.Search.WebControls" TypeName="*" Safe="True" />
您也可能需要降低在web.config的信任级别:
<trust level="WSS_Minimal" originUrl="" />
不隶属于 StackOverflow