Разрешения, предоставленные пользователю ', недостаточны для выполнения этой операции. (RsAccessDenied) "} - PullRequest
85 голосов
/ 25 сентября 2008

Я создал модель отчета с использованием SSRS (2005) и опубликовал на локальном сервере. Но когда я попытался запустить отчет для модели, которую я опубликовал, с помощью построителя отчетов, я получил следующую ошибку.

Ошибка выполнения отчета. Предоставленные пользователю разрешения недостаточны для выполнения этой операции. (rsAccessDenied)

Ответы [ 21 ]

3 голосов
/ 23 февраля 2014

Проблема:

Ошибка rsAccessDenied: разрешения, предоставленные пользователю «Пользователь \ Пользователь», недостаточны для выполнения этой операции.

Решение:

Нажмите «Настройка папки»> «Назначение новой роли» Затем введите «Пользователь \ Пользователь» в поле «Группа или имя пользователя». Установите флажки Роли, которые вы хотите, чтобы пользователь имел.

2 голосов
/ 09 июля 2014

Откройте Internet Explorer как администратор.

Открыть URL отчетов http://machinename/reportservername

затем в «настройках папки» дайте разрешение нужным группам пользователей.

2 голосов
/ 12 марта 2016

Это сработало для меня Перейдите в диспетчер отчетов, проверьте настройки сайта-> Безопасность -> Назначение новых ролей-> Добавить пользователя

-Также перейдите к наборам данных в диспетчере отчетов -> набор данных вашего отчета -> Безопасность -> Назначение новой роли -> добавьте пользователя с необходимой ролью.

Спасибо!

2 голосов
/ 12 марта 2014

Что сработало для меня:

Open localhost/reports
Go to properties tab (SSRS 2008)
Security->New Role Assignment
Add DOMAIN/USERNAME or DOMAIN/USERGROUP
Check Report builder
1 голос
/ 14 января 2019

Отчет может захотеть получить доступ к DataSource или DataView, где у пользователя AD (или группы AD) недостаточно прав доступа.

Убедитесь, что вы проверили следующие URL:

  • http://REPORTSERVERNAME/Reports/Pages/Folder.aspx?ItemPath=%2fDataSources
  • http://REPORTSERVERNAME/Reports/Pages/Folder.aspx?ItemPath=%2fDataSets

Затем выберите Folder Settings

Folder Settings

(или соответствующий индивидуальный DataSource или DataSet) и выберите Security. Группа пользователей должна иметь разрешение Browser.

enter image description here

1 голос
/ 24 октября 2016

Я знаю, что это уже давно, но может быть полезным для любых других новичков,

Я решил передать имя пользователя, пароль и домен при запросе отчетов SSRS, поэтому я создал один класс, который реализует IReportServerCredentials.

 public class ReportServerCredentials : IReportServerCredentials   
{
    #region  Class Members
        private string username;
        private string password;
        private string domain;
    #endregion

    #region Constructor
        public ReportServerCredentials()
        {}
        public ReportServerCredentials(string username)
        {
            this.Username = username;
        }
        public ReportServerCredentials(string username, string password)
        {
            this.Username = username;
            this.Password = password;
        }
        public ReportServerCredentials(string username, string password, string domain)
        {
            this.Username = username;
            this.Password = password;
            this.Domain = domain;
        }
    #endregion

    #region Properties
        public string Username
        {
            get { return this.username; }
            set { this.username = value; }
        }
        public string Password
        {
            get { return this.password; }
            set { this.password = value; }
        }
        public string Domain
        {
            get { return this.domain; }
            set { this.domain = value; }
        }
        public WindowsIdentity ImpersonationUser
        {
            get { return null; }
        }
        public ICredentials NetworkCredentials
        {
            get
            {
                return new NetworkCredential(Username, Password, Domain);
            }
        }
    #endregion

    bool IReportServerCredentials.GetFormsCredentials(out System.Net.Cookie authCookie, out string userName, out string password, out string authority)
    {
        authCookie = null;
        userName = password = authority = null;
        return false;
    }
}

при вызове SSRS Reprots введите следующий код

 ReportViewer rptViewer = new ReportViewer();
 string RptUserName = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportUser"]);
        string RptUserPassword = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportUserPassword"]);
        string RptUserDomain = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportUserDomain"]);
        string SSRSReportURL = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportURL"]);
        string SSRSReportFolder = Convert.ToString(ConfigurationManager.AppSettings["SSRSReportFolder"]);

        IReportServerCredentials reportCredentials = new ReportServerCredentials(RptUserName, RptUserPassword, RptUserDomain);
        rptViewer.ServerReport.ReportServerCredentials = reportCredentials;
        rptViewer.ServerReport.ReportServerUrl = new Uri(SSRSReportURL);

SSRSReportUser, SSRSReportUserPassword, SSRSReportUserDomain, SSRSReportFolder определены в файлах web.config.

1 голос
/ 05 января 2016

Спасибо за обмен. После полутора дней борьбы заметил, что сервер отчетов был настроен с неверным IP-адресом домена. Он был настроен с резервным IP-адресом домена, который находится в автономном режиме. Я определил это в конфигурации группы пользователей, где доменное имя не было указано. Изменили IP и перезагрузите сервер отчетов. Проблема решена.

1 голос
/ 26 июля 2013

Точно так же, как Нассер, я знаю, что это было некоторое время назад, но я хотел опубликовать свое решение для тех, кто имеет эту проблему в будущем.

Я настроил свой отчет так, чтобы он использовал подключение к данным в библиотеке подключений к данным, размещенной на SharePoint. Моя проблема заключалась в том, что у меня не было «одобренного» подключения для передачи данных, чтобы его могли использовать другие пользователи.

Еще одна вещь, которую нужно искать, - убедиться, что разрешения для этой библиотеки подключений к данным также позволяют читать выбранным пользователям.

Надеюсь, это поможет кому-то рано или поздно!

1 голос
/ 25 сентября 2013

Для SQL Reporting Services 2012 - SP1 и SharePoint 2013.

У меня та же проблема: Разрешения, предоставленные пользователю '[AppPoolAccount]', недостаточны для выполнения этой операции.

Я зашел в настройки приложения-службы, щелкнул Управление ключами, затем Изменить ключ и попросил его восстановить ключ.

0 голосов
/ 04 сентября 2009

Что сработало для меня:

  • Перейти к настройке сайта
  • Нажмите «Настройка безопасности для всего сайта»
  • Нажмите кнопку «Новое назначение роли» в верхней панели
  • Дайте новой роли следующее имя "Все"
  • Из доступных ролей предоставьте только «Системный пользователь»
  • Нажмите «Применить»

Это должно сделать,

Удачи!

...