Question

Je développe une fonctionnalité SharePoint qui devrait permettre uniquement à la ferme administrateur de supprimer une sitecollection.Dans l'événement SitePet Singing, j'ai besoin de chech si l'utilisateur supprime est Farmadmin.Comment devrais-je faire ça?J'ai reçu une propriété pour vérifier si l'utilisateur est webAndmin (propriétés.web.useriswebadmin) ou SITEADMIN (propriétés.web.userissikeadmin) mais comment vérifier si l'utilisateur est AMARD Admin?

Toute aide est très appréciée ..

Était-ce utile?

La solution

SPFarm farm = SPFarm.Local;
farm.CurrentUserIsAdministrator();

Ces classes résident dans l'espace de noms Microsoft.SharePoint.Administration.Plus sur CurrentUserSerisAdministrator ou SPFARM classesur MSDN.

Autres conseils

public static bool IsFarmAdmin(string loginName)
            {
                //For Currently Logged in users  
                //SPFarm.Local.CurrentUserIsAdministrator();  

        bool isFarmAdmin = false;

        SPSecurity.RunWithElevatedPrivileges(delegate()
        {
            SPGroup adminGroup = SPAdministrationWebApplication.Local.Sites[0].AllWebs[0].SiteGroups["Farm Administrators"];

            foreach (SPUser user in adminGroup.Users)
            {
                if (user.LoginName == loginName)
                {
                    isFarmAdmin = true;
                }
            }

        });

        return isFarmAdmin;
    } 
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top