ReportingService2010.GetPermissions(String) ReportingService2010.GetPermissions(String) ReportingService2010.GetPermissions(String) Method

Definition

Returns the user permissions that are associated with a particular item in a report server database or SharePoint library.

public:
 cli::array <System::String ^> ^ GetPermissions(System::String ^ ItemPath);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/GetPermissions", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
[System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")]
[System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)]
public string[] GetPermissions (string ItemPath);
Public Function GetPermissions (ItemPath As String) As String()
Parameters
ItemPath
String String String

The fully qualified URL of the item including the file name and, in SharePoint mode, the extension.

Returns
String[]

An array of String objects that contains a list of permissions associated with the assigned tasks and roles of the item for the current user.

Examples

using System;  
using System.Collections.Generic;  
using System.IO;  
using System.Text;  
using System.Web;  
using System.Web.Services;  
using System.Web.Services.Protocols;  

class Sample  
{  
    static void Main(string[] args)  
    {  
        ReportingService2010 rs = new ReportingService2010();  
        rs.Url = "http://<Server Name>" +  
            "/_vti_bin/ReportServer/ReportService2010.asmx";  
        rs.Credentials =   
            System.Net.CredentialCache.DefaultCredentials;  

        try  
        {  
            String[] permissions =   
                rs.GetPermissions(  
                    "http://<Server Name>/Docs/Documents" +  
                    "/AdventureWorks Sample Reports/" +  
                    "Sales Order Detail.rdl");  

            foreach (string perm in permissions)  
            {  
                Console.WriteLine(perm);  
            }  
        }  

        catch (SoapException e)  
        {  
            Console.WriteLine(e.Detail.InnerXml.ToString());  
        }  
    }  
}  
Imports System  
Imports System.IO  
Imports System.Text  
Imports System.Web.Services  
Imports System.Web.Services.Protocols  

Class Sample  

    Public Shared Sub Main()  

        Dim rs As New ReportingService2010()  
        rs.Url = "http://<Server Name>" + _  
            "/_vti_bin/ReportServer/ReportService2010.asmx"  
        rs.Credentials = _  
            System.Net.CredentialCache.DefaultCredentials  

        Try  
            Dim permissions As [String]() = _  
                rs.GetPermissions("http://<Server Name>" + _  
                    "/Docs/Documents/AdventureWorks Sample " + _  
                    "Reports/Sales Order Detail.rdl")  

            Dim perm As String  
            For Each perm In permissions  
                Console.WriteLine(perm)  
            Next perm  

        Catch e As SoapException  
            Console.WriteLine(e.Detail.InnerXml.ToString())  
        End Try  

    End Sub  

End Class  

Remarks

The table below shows header and permissions information on this operation.

SOAP Header Usage (In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue
Native Mode Required Permissions None
SharePoint Mode Required Permissions None

Applies to