WSS 3.0機能 - ユーザーがファーム管理者であるかどうかを確認してください
-
26-09-2020 - |
質問
ファーム管理者だけがSiteCollectionを削除できるようにするSharePoint機能を開発しています。SitedEletingイベントでは、ユーザー削除がFARMADMINの場合はCHECHが必要です。どうやってそれをするべきですか?ユーザーがWebAdmin(Properties.Web.UserisWebAdmin)またはSiteAdmin(Properties.Web.UserisSiteAdmin)かどうかを確認するプロパティがありましたが、ユーザーがファーム管理者のかどうかを確認する方法?
あらゆる助けが大歓迎です。
解決
SPFarm farm = SPFarm.Local;
farm.CurrentUserIsAdministrator();
.
これらのクラスはMicrosoft.SharePoint.AdmineStration Namespaceにあります。> CurrentUserISAdministrator または
他のヒント
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;
}
. 所属していません StackOverflow