RunWithElevatedPrivileges

Metoda System.RunWithElevatedPrivileges umožňuje spouštet kód s plnými právy (Full Control). Hodí se pokud potřebujeme nějakému obyčejnému uživateli umožnit nastavovat vlastnosti, které mu jinak najsou přístupné (např. přes Webpart).

V metodě se musí vytvořit SPSite, nemůžeme použít SPContext, práva by zůstala stejná.

Examples

Easy use

SPSecurity.RunWithElevatedPrivileges(delegate()
{
    using (SPSite site = new SPSite(siteURL))
    {
    // code
    }
});

Delegate method

        private SPSite oSPSite = null;
        private SPWeb oSPWeb = null;
 
        /// <summary>
        /// This Method is called throug Delegate
        /// </summary>
        private void OpenSPWeb()
        {
            oSPSite = new SPSite("http://srv-moss-tp1:36000");
            oSPWeb = oSPSite.OpenWeb();
        }
 
        /// <summary>
        /// If you click the Button to establish a connection to your SharePoint-Site,
        /// you run this code with elevated Privileges.
        /// </summary>
        private void btn_Click(object sender, EventArgs e)
        {
            SPSecurity.CodeToRunElevated elevatedOpenSPWeb = new SPSecurity.CodeToRunElevated(OpenSPWeb);
            SPSecurity.RunWithElevatedPrivileges(elevatedOpenSPWeb);
 
            // code
 
        }
programming/sharepoint/runwithelevatedprivileges.txt · Last modified: 2018-06-21 19:48 (external edit)
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0