Access נדחתה בעת פריסת משימת שעון עצר או הפעלת תכונה מיישום אינטרנט תוכן SharePoint 2010


מאפייני הבעיה


אתה מקבל Access נדחתה ' כאשר אתה מנסה להפעיל תכונה בקוד מתוך יישום אינטרנט של SharePoint 2010. שגיאה זו מתרחשת בכל פעם שאתה מנסה לבצע שינויים מיישומים תוכן (אינטרנט חזיתי) ליישום config (יישום הניהול המרכזי). לדוגמה שינויים web. config. הגישה נדחתה שגיאה מתרחשת גם כאשר גלישת הקוד ב- RunWithElevatedPrivileges.

הגורם


הגורם לכך הוא תכונת אבטחה חדשה מיושמת ב- SharePoint 2010. תכונה זו במפורש חוסמת את כל השינויים לאובייקטים היורשים SPPersistedObject במרחב השמות Microsoft.SharePoint.Administration ו- תאפשר את יישומי אינטרנט תוכן לעדכן את מסד הנתונים של התצורה. תכונת אבטחה זו חדש, השולטת בהתנהגות הוא המאפיין SPWebService.RemoteAdministratorAccessDenied ב- API של SharePoint. למרות שהוא ניתן לבטל במידת הצורך, אך כמו עם כל תכונת אבטחה, עליך להיות זהיר באמת ולבצע בדיקה יסודית לפני שתבטל אותה.

פתרון


RemoteAdministratorAccessDenied הוא מאפיין עקביים אשר להיות מוגדרת כ- false כדי לבטל את התכונה. באפשרותך לעשות זאת ב- יישום מסוף או להשתמש Powershell ולאחר מכן לבצע IISReset.

קוד יישום מסוף

SPWebService myService = SPWebService.ContentService;
myService.RemoteAdministratorAccessDenied = false;
myService.Update();


קוד PowerShell

פונקציה Set-RemoteAdministratorAccessDenied-False()
{
    [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint") > $null
    [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Administration") > $null

# לקבל שירות אינטרנט תוכן
    $contentService = [Microsoft.SharePoint.Administration.SPWebService]::ContentService
# לבטל אבטחה ניהול מרחוק
    $contentService.RemoteAdministratorAccessDenied = $false
$contentService.Update()
}

ערכת RemoteAdministratorAccessDenied שקר