none
SharePoint 2013. Run timer job instance custom form RRS feed

  • Общие обсуждения

  • Здравствуйте. В связи с печальными изменениями в безопасности SharePoint'а, если не настраивать все под одним аккаунтом, а хотя бы разбить на несколько, то появляются дополнительные проблемы с созданием/удалением/запуском timer job'ов.

    1. Форма для пользователей

    2. На форме кнопка

    3. Пользователь нажимает на кнопку, запускается timer job.

    4. ...

    5. Profit.

    Даже если использовать RWEP (RemoteAdministratorAccessDenied = $false тоже не помогает, пробовал), то в веб-приложении, application pool которого запускается не под системной для SharePoint'а учеткой, получаем ошибку:

    Security Exception 
    Description: The application attempted to perform an operation not allowed by the security policy.  To grant this application the required permission please contact your system administrator or change the application's trust level in the configuration file. 
    
    Exception Details: System.Security.SecurityException: Нет доступа.
    
    Source Error: 
    
    [No relevant source lines] 
    
    Source File: c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\efc06ff1\e63d8757\App_Web_managearchivedocrecords.aspx.89ab58fb.rxpl1v74.0.cs    Line: 0 
    
    Stack Trace: 
    
    [SecurityException: Нет доступа.]
       Microsoft.SharePoint.Administration.SPPersistedObject.BaseUpdate() +1722   Microsoft.SharePoint.Administration.SPJobDefinition.Update() +206   Microsoft.SharePoint.Administration.SPJobDefinition.RunNow() +173
    ...

    Как можно запустить timer job здесь и сейчас (костыли примерно я придумал какие можно сделать)? Надавать больше прав везде (в БД, например) учетке app pool'а не вариант, иначе зачем тогда я делал столько аккуантов по всяким best practice.

    UPD1. На всякий случай. В web.config уже стоит

    <trust level="Full" originUrl="" legacyCasModel="true" />


    19 сентября 2013 г. 14:18