Развертывание политик CAS в Sharepoint с помощью платформы решения

Я развертываю свои веб-части с помощью механизма решения sharepoint. Теперь Untul все работало нормально, но когда я добавил политики CAS в файл manifest.xml, развертывание не работает должным образом. При развертывании решения с политиками CAS ошибок нет, но файл политики не создается, dll не копируется, а записи SafeControls не добавляются в web.config. Мой файл manifest.xml выглядит так:

<Solution SolutionId="{8099F953-02F2-49e1-B620-06B9050515A3}"
          xmlns="http://schemas.microsoft.com/sharepoint/">

  <FeatureManifests>
    <FeatureManifest Location="Przydzialy\feature.xml" />
  </FeatureManifests>

  <TemplateFiles>
    <TemplateFile Location="FEATURES\Przydzialy\AjaxWebPart.dwp" />
    <TemplateFile Location="FEATURES\Przydzialy\UserControlContainer.dwp" />
  </TemplateFiles>

  <Assemblies>
    <Assembly DeploymentTarget="WebApplication" Location="Package.WebParts.dll">
      <SafeControls>
        <SafeControl Assembly="Package.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9a8b1f3d028b8494" Namespace="Package.WebParts" TypeName="UserControlContainer" Safe="True" />
        <SafeControl Assembly="Package.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9a8b1f3d028b8494" Namespace="Package.WebParts" TypeName="AjaxWebPart" Safe="True" />
        <SafeControl Assembly="Package.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9a8b1f3d028b8494" Namespace="Package.WebParts" TypeName="ProgressTemplate" Safe="True" />
        <SafeControl Assembly="Package.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9a8b1f3d028b8494" Namespace="Package.WebParts.SmartWebPart" TypeName="UserControlContainerToolPart" Safe="True" />
      </SafeControls>
    </Assembly>
  </Assemblies>

  <CodeAccessSecurity>
    <PolicyItem>
      <PermissionSet class="NamedPermissionSet" version="1" Description="Permission set for Package.WebParts">
        <IPermission class="AspNetHostingPermission" version="1" Level="Medium" />
      </PermissionSet>
      <Assemblies>
        <Assembly Name="Package.WebParts" />
      </Assemblies>
    </PolicyItem>
  </CodeAccessSecurity>

</Solution>

Была ли у кого-нибудь такая проблема раньше? На данный момент у меня закончились идеи, поэтому я открыт для предложений.


person Kociub    schedule 20.03.2009    source источник


Ответы (1)


Проверьте свой web.config и убедитесь, что уровень доверия не установлен на полный. Для него должно быть установлено значение WSS_Minimal, если вы еще не развернули какие-либо политики CAS, или WSS_Custom, если вы уже что-то развернули. Убедитесь, что в вашем пакете решения нет файлов только для чтения, так как это вызывает проблемы.

Наконец, развертываете ли вы свое решение через Central Admin или stsadm? Если вы развертываете через stsadm, перейдите к центральному администратору и посмотрите, отображаются ли какие-либо ошибки при развертывании решения.

Более чем вероятно, что вам также понадобятся дополнительные наборы разрешений, проверьте мой пост здесь, чтобы узнать больше о Безопасность доступа кода.

person Corey Roth    schedule 20.03.2009