Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 没有有效权限的权限站点用户返回“;开放式;在SharePoint 2013 SP1中_C#_Permissions_Sharepoint 2013_Spweb - Fatal编程技术网

C# 没有有效权限的权限站点用户返回“;开放式;在SharePoint 2013 SP1中

C# 没有有效权限的权限站点用户返回“;开放式;在SharePoint 2013 SP1中,c#,permissions,sharepoint-2013,spweb,C#,Permissions,Sharepoint 2013,Spweb,我想检查当前用户谁有网站的权限,在SSOM可编程 我在Visual Studio 2013中创建了控制台应用程序 但我在一个SharePoint农场得到了有趣的结果 在“网站集功能”部分,我激活了“SharePoint Server发布基础结构” 在这种情况下,SharePoint组“样式资源阅读器”被创建并包含“所有人”。 然后我为“无站点权限”用户尝试了这个程序 在所有4个农场中,3个农场返回“打开”。我认为这是因为样式资源读取器包含“所有人” 然而,有1个农场没有得到许可 所以我的问题是。

我想检查当前用户谁有网站的权限,在SSOM可编程

我在Visual Studio 2013中创建了控制台应用程序

但我在一个SharePoint农场得到了有趣的结果

在“网站集功能”部分,我激活了“SharePoint Server发布基础结构”

在这种情况下,SharePoint组“样式资源阅读器”被创建并包含“所有人”。 然后我为“无站点权限”用户尝试了这个程序

在所有4个农场中,3个农场返回“打开”。我认为这是因为样式资源读取器包含“所有人”

然而,有1个农场没有得到许可

所以我的问题是。 在相同的代码、相同的解决方案中,为什么结果不同

如果有人知道这个案子,请告诉我

        string url1 = "http://ServerName/sites/SiteCol1";
        string userName = "i:0#.w|domainname\\username";

        try
        {


            SPSecurity.RunWithElevatedPrivileges(delegate()
                {
                    Console.WriteLine("Privilages");

                    using (SPSite oSIte = new SPSite(url1))
                    {
                        using(SPWeb web1 = oSIte.OpenWeb())
                        {
                            Console.WriteLine("checkpermissiion");
                            Console.WriteLine(web1.GetUserEffectivePermissions(userName));
                       }
                    }
                }
                );
       }
        catch (UnauthorizedAccessException ex)
        {
          console.writeline(ex.message);
        }
        catch (Exception ex)
        {

            Console.WriteLine("Catch Exception");
            Console.WriteLine(ex.Message);
        }
        finally
        {
            /
            SPSecurity.CatchAccessDeniedException = true;
        }