У меня есть сервера отчетов URL - http://server_name/ReportServer/ReportService2010.asmxSSRS 2010 - Reporting Services SOAP API Недостаточный разрешения ошибок
Я пытаюсь получить доступ к сервису с помощью C# консольного приложения
Моя консоль приложения код со ссылкой службы под названием ReportsService к серверу отчетов, код здесь -
static void Main(string[] args) { ReportsService.ReportingService2010SoapClient proxy = new ReportsService.ReportingService2010SoapClient(); proxy.ClientCredentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials; proxy.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; //proxy.ClientCredentials = ""; try { ReportsService.Schedule[] schedule; ReportsService.TrustedUserHeader trustedHeader = new ReportsService.TrustedUserHeader(); string siteURL = null; proxy.ListSchedules(trustedHeader, siteURL, out schedule); } catch (Exception e) { throw; } }
}
Я получаю это сообщение об ошибке при выполнении proxy.ListSchedules() -
{«Разрешений, предоставленных пользователю« DOMAIN \ user.name », недостаточно для выполнения этой операции. ---> Microsoft.ReportingServices.Diagnostics.Utilities.AccessDeniedException: Разрешения, предоставленные пользователем 'DOMAIN \ user.name' недостаточны для выполнения данной операции "}App.config файл -
.<bindings> <basicHttpBinding> <binding name="ReportingService2010Soap"> <security mode="TransportCredentialOnly"> <transport clientCredentialType="Ntlm"></transport> </security> </binding> </basicHttpBinding> </bindings> <client> <endpoint address="http://server_name:80/ReportServer/ReportService2010.asmx" binding="basicHttpBinding" bindingConfiguration="ReportingService2010Soap" contract="ReportsService.ReportingService2010Soap" name="ReportingService2010Soap" /> </client>
Пожалуйста, дайте мне знать, как обойти эту ошибку.