【问题标题】:Programmatically access User permissions for web application in sharepoint 2010以编程方式访问 sharepoint 2010 中 Web 应用程序的用户权限
【发布时间】:2017-09-05 14:00:12
【问题描述】:

我正在尝试访问用户权限 > 使用 sharepoint API 创建子站点启用/禁用功能。如何访问 Web 应用程序的用户权限?

如果您在 sharepoint 2010 中转到 CA 并单击 Web 应用程序,然后在功能区中选择“用户权限”,则会显示许多复选框。在站点许可下,可以选择创建子站点。这正是我正在寻找的。

【问题讨论】:

    标签: sharepoint-2010


    【解决方案1】:

    基于此参考:Toggle permission in WebApplication.RightsMask)

    Powershell:

    $webApp = Get-SPWebApplication -Identity http://mywebapp
    $allowSubsites = $false
    
    
    $newPermissions=$null   
    if ($allowSubsites){
        $newPermissions=[Microsoft.SharePoint.SPBasePermissions]($webApp.RightsMask -bor [Microsoft.SharePoint.SPBasePermissions]::ManageSubWebs)
    }
    else
    {
        $newPermissions=[Microsoft.SharePoint.SPBasePermissions]($webApp.RightsMask -band [System.Int64](-bnot ([Microsoft.SharePoint.SPBasePermissions]::EmptyMask -bor [Microsoft.SharePoint.SPBasePermissions]::ManageSubWebs)))
    }
    
    $webApp.RightsMask = $newPermissions
    $webApp.Update()
    

    C#:

       SPWebApplication application = sourceSite.WebApplication;
       application.RightsMask = application.RightsMask | SPBasePermissions.ManageSubwebs;
       application.Update();
    

    【讨论】:

      【解决方案2】:

      Web 应用程序 (SPWebApplication) 本身没有每个用户的权限。最高级别(就最小粒度设置而言)是网站集 (SPSiteCollection)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-10-25
        • 1970-01-01
        • 1970-01-01
        • 2010-09-26
        • 2011-12-15
        • 1970-01-01
        • 2012-02-13
        • 1970-01-01
        相关资源
        最近更新 更多