Разрешения, предоставленные пользователю, недостаточны для выполнения этой операции. (rsAccessDenied) "}

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

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


person jbcedge    schedule 25.09.2008    source источник
comment
Я нашел это полезным .... msdn.microsoft.com/en-GB/ library / bb630430.aspx Windows предполагает, что каждый является стандартным пользователем ...   -  person Trabumpaline    schedule 10.09.2015


Ответы (21)


Это из-за отсутствия прав для пользователя, у которого вы запускаете построитель отчетов, просто дайте этому пользователю или группе право запускать построитель отчетов. Посетите эту статью

Или для ярлыка:

  1. Запустите Internet Explorer, используя «Запуск от имени администратора».
  2. Откройте http://localhost/reports.
  3. Перейдите на вкладку свойств (SSRS 2008)
  4. Безопасность-> Назначение новой роли
  5. Добавить ДОМЕН / ИМЯ ПОЛЬЗОВАТЕЛЯ или ДОМЕН / ГРУППУ ПОЛЬЗОВАТЕЛЯ
  6. Проверить построитель отчетов
person Emad Mokhtar    schedule 20.06.2011
comment
Я хочу получить доступ к этим отчетам, используя простую учетную запись пользователя без роли администратора. В этом сценарии, как мы можем это использовать? - person Gaurav Agrawal; 13.07.2012
comment
@GauravAgrawal Что вы имеете в виду под простым пользователем? Этот пользователь присоединился к домену? - person Emad Mokhtar; 15.07.2012
comment
Не уверен, что это относится к 2012 году, но мне также пришлось настроить безопасность в «настройках сайта». - person uli78; 25.04.2014
comment
В 2014 г. настройте роли как в параметрах папки, так и в параметрах сайта. - person Josh Noe; 05.12.2014
comment
Одна вещь из статьи, которая может вам помочь: для настройки использовать IE и Запуск от имени администратора. Затем перейдите в Настройки папки (установите себя как Content Manager) и в Настройки сайта (роль: администратор). Затем вернитесь в браузер по умолчанию, и он будет работать. (Я нахожусь в 2012 году). - person Tomasz Gandor; 04.03.2015
comment
Мне пришлось использовать DOMAIN \ USERNAME вместо косой черты. - person Paul; 14.05.2015
comment
Ошибка на шаге 2. Я получил это сообщение: у пользователя нет необходимых разрешений. Убедитесь, что предоставлены достаточные разрешения и что ограничения контроля учетных записей Windows (UAC) устранены. - person NoName; 15.02.2016
comment
Намного более подробный, чем принятый ответ, которого я не могу понять. - person Chaim Eliyah; 21.11.2016
comment
Сработало для меня как шарм! Большое спасибо. - person Denys Avilov; 10.03.2017
comment
Я пропустил добавление пользователя в настройки сайта. После его добавления пользователь мог предварительно просматривать отчеты в построителе отчетов. Спасибо! - person missingsemicolon; 13.06.2018
comment
Запустите Internet Explorer, используя Запуск от имени администратора ‹- Не Chrome, не Edge, это должен быть хороший старый IE. - person user77232; 10.06.2021

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

  1. Добавьте [Домен \ Пользователь] в группы Администратор, IISUser, SQLReportingUser.
  2. Удалить ключ шифрования в инструментах настройки SSRS.
  3. Повторно запустите изменение базы данных в инструментах настройки SSRS.
  4. Откройте WebServiceUrl из инструментов конфигурации SSRS (http://localhost/reportserver )
  5. создание отчетов вручную
  6. перейдите в Свойства созданной папки и добавьте эти роли в систему безопасности (встроенная \ пользователи, встроенная \ администратор, домен \ пользователь)
  7. Разверните отчеты, и ваша проблема будет решена
person Nasser Hadjloo    schedule 09.06.2010
comment
Привет! У меня проблема в том, что все отчеты работают, кроме одного. Ошибка: разрешения, предоставленные пользователю NT AUTHORITY \ IUSR, недостаточны для выполнения этой операции. (rsAccessDenied). Какая разница может быть для одного отчета? - person Richa; 18.11.2014
comment
У меня даже нет этих групп! Вместо этого у меня Administrators, IIS_IUSRS, SQLServer2005SQLBrowserUser$User! Что мне делать в этом случае? Как часто это меняется! : o - person user2173353; 02.12.2015

Щелкните правой кнопкой мыши Microsoft BI -> щелкните Запуск от имени администратора -> либо откройте существующий отчет SSRS, либо создайте новый отчет SSRS, а затем разверните отчет, после чего вы получите один веб-URL для просмотра отчета. Скопируйте этот URL-адрес и вставьте в веб-браузер (Запуск от имени администратора), и вы получите представление отчета. Вы можете использовать Internet Explorer, который необходим для веб-службы.

Если это неправильно, значит, пожалуйста, простите меня, так как мне это понравилось, и я только что написал.

person Robert Bosco    schedule 06.07.2012
comment
Запуск Visual Studio (BI) от имени администратора (щелчок правой кнопкой мыши) помог мне. - person maets; 19.07.2013

Убедитесь, что у вас настроен доступ к URL-адресу http://localhost/reports с помощью конфигурации служб SQL Reporting Services. Сделать это:

  1. Откройте диспетчер конфигурации служб Reporting Services -> затем подключитесь к экземпляру сервера отчетов -> затем щелкните URL-адрес диспетчера отчетов.
  2. На странице URL-адреса диспетчера отчетов нажмите кнопку «Дополнительно» -> затем в разделе «Несколько удостоверений для диспетчера отчетов» нажмите «Добавить».
  3. Во всплывающем окне «Добавить URL-адрес HTTP диспетчера отчетов» выберите «Заголовок хоста» и введите: localhost.
  4. Щелкните ОК, чтобы сохранить изменения.
  5. Теперь запустите / запустите Internet Explorer, используя Запуск от имени администратора ... (ПРИМЕЧАНИЕ. Если вы не видите ссылку «Параметры сайта» в верхнем левом углу, находясь по адресу http://localhost/reports, вероятно, это связано с тем, что вы не используете IE в качестве администратора или не назначили домен \ имя пользователя для своих компьютеров ролям служб отчетов. Узнайте, как сделайте это на следующих нескольких шагах.)
  6. Затем перейдите по адресу: http://localhost/reports (возможно, вам придется войти в систему, используя имя пользователя и пароль вашего компьютера)
  7. Теперь вы должны быть перенаправлены на домашнюю страницу служб отчетов SQL Server здесь: http://localhost/Reports/Pages/Folder.aspx
  8. На домашней странице перейдите на вкладку «Свойства», затем нажмите «Назначение новой роли».
  9. В текстовом поле «Группа или имя пользователя» добавьте «домен \ имя пользователя», которое было в сообщении об ошибке (в моем случае я добавил: DOUGDELL3-PC \ DOUGDELL3 для «домен \ имя пользователя», в вашем случае вы можете найти домен \ username для вашего компьютера в сообщении об ошибке rsAccessDenied).
  10. Теперь установите все флажки; Браузер, Диспетчер содержимого, Мои отчеты, Издатель, Построитель отчетов, а затем нажмите ОК.
  11. Ваш домен \ имя пользователя теперь должны быть назначены ролям, которые предоставят вам доступ для развертывания ваших отчетов на сервере отчетов. Если вы используете Visual Studio или SQL Server Business Intelligence Development Studio для развертывания отчетов на локальном сервере отчетов, теперь у вас должна быть возможность.
  12. Надеюсь, это поможет вам решить проблему с сообщением об ошибке сервера отчетов rsAccessDenied ...

Просто чтобы вы знали, что это руководство было выполнено на компьютере под управлением Windows 7 с SQL Server Reporting Services 2008.

Справочная статья: http://techasp.blogspot.co.uk/2013/06/how-to-fix-reporting-services.html

person Soheila Hg    schedule 26.08.2015
comment
Обратите внимание, что ответы только по ссылкам не приветствуются, ответы SO должны быть конечной точкой поиска. для решения (по сравнению с очередной остановкой ссылок, которые со временем устаревают). Пожалуйста, подумайте о добавлении здесь отдельного синопсиса, сохранив ссылку в качестве справочной. - person kleopatra; 26.08.2015

Вы также можете убедиться, что удостоверение в пуле приложений имеет необходимые разрешения.

  1. Перейти к диспетчеру IIS

  2. Щелкните Пулы приложений

  3. Определите пул приложений сайта, на котором вы развертываете отчеты.

  4. Убедитесь, что удостоверение установлено для какой-либо учетной записи службы или учетной записи пользователя с правами администратора.

  5. Вы можете изменить идентификатор, остановив пул, щелкнув его правой кнопкой мыши и выбрав Дополнительные параметры ...

В разделе «Модель процесса» находится поле «Идентификация».

person Kasey Mohsen    schedule 31.03.2011
comment
Мне также пришлось сделать следующее на сервере Windows 2008 R2. Для меня сработало Open I.E в режиме администратора, то есть Right Clikc I.E - ›Запуск от имени администратора. Затем перейдите по адресу http: // {ваш baseurl}: {ваш базовый порт} / Reports / Для меня это devsql2008r2: 80 / Reports Это устранило мою ошибку. Chrome или Firefox по-прежнему не открываются. - person Vishnoo Rath; 28.01.2013
comment
Другими словами: этот ответ исправит сценарий, в котором ваше пользовательское приложение, которое пытается вызвать SSRS, работает как UserA в AppPool Identity. Но этот UserA НЕ настроен на сервере SSRS для доступа (например, не в группе BUILTIN\Administrators). Таким образом, исправление состоит в том, чтобы изменить идентификатор AppPool на некоторого пользователя-администратора в домене. Или обновите настройки SSRS, чтобы включить текущего пользователя AppPool Identity. - person Don Cheadle; 13.12.2019

Я выполнил следующие действия, и у меня они работают.

Откройте диспетчер конфигурации служб Reporting Services -> затем подключитесь к экземпляру сервера отчетов -> затем щелкните URL-адрес диспетчера отчетов.

На странице URL-адреса диспетчера отчетов нажмите кнопку «Дополнительно» -> затем в разделе «Несколько удостоверений для диспетчера отчетов» нажмите «Добавить».

Во всплывающем окне «Добавить URL-адрес HTTP диспетчера отчетов» выберите «Заголовок хоста» и введите: localhost. Нажмите «ОК», чтобы сохранить изменения.

Потом:

  1. скопировал URL-адрес сервера отчетов
  2. Запустите Google Chrome / Internet Explorer от имени администратора.
  3. Вставьте URL-адрес в адресную строку и нажмите Enter.

у меня он отлично работает в Internet Explorer и Google Chrome, но не в mozilla Firefox.

В случае, если Firefox запрашивает имя пользователя и пароль, я предоставляю его, но он не работает. Я админ и имею полное право.

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

Если вы получаете исключение такого типа при развертывании этого отчета из Visual Studio, выполните следующие действия:

  1. Откройте Google Chrome / Internet Explorer с правами администратора.
  2. откройте в нем URL-адрес сервера отчетов.

3.Щелкните «Назначение новой роли», добавьте, затем введите имя пользователя и выберите роли. введите описание изображения здесь

  1. нажмите ОК.
  2. Теперь разверните отчет из Visual Studio, он будет работать и развернуть отчеты на указанном сервере.
person Banketeshvar Narayan    schedule 31.01.2016

в разделе Параметры сайта в диспетчере отчетов> Настроить определения ролей на системном уровне> установите флажок ExecuteReport Defination, затем создайте системную группу пользователей, предоставьте доступ к этой группе при подключении к базе данных служб отчетов в свойствах сервера и добавьте группу и разрешите доступ как Системный пользователь ... Должно работать

person Community    schedule 09.12.2008

У меня SQL2008 / Windows 2008 Enterprise, и вот что мне пришлось сделать, чтобы исправить ошибки rs.accessdenied, 404, 401 и 503:

  • Добавлены пользователи NT к пользователям сервера отчетов SQL и группе IIS_USR
  • Я изменил службу отчетов SQL на локальную учетную запись (это был домен с локальным администратором)
  • Я удалил ключ шифрования в конфигурации служб Reporting Services (последняя вкладка в списке)
  • и ТОГДА это сработало.
person Community    schedule 24.08.2009

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

Откройте URL-адрес отчетов http://machinename/reportservername

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

person Atur    schedule 09.07.2014

Старый, но актуальный выпуск. Я решил на 2012 год, войдя на сервер отчетов и:

  • перейдите к http://localhost/reports/
  • Нажмите "Параметры сайта" в правом верхнем углу (было доступно только при входе на сервер отчетов).
  • Перейдите на вкладку «Безопасность» и нажмите «Назначение новой роли».
  • Добавлен мой ДОМЕН \ ИМЯ ПОЛЬЗОВАТЕЛЯ в качестве системного администратора

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

person user2051770    schedule 22.05.2015

После настройки SSRS 2016 я подключился к серверу (Windows Server 2012 R2) по протоколу RDP, перешел к URL-адресу отчетов (https://reports.fakeserver.net/Reports/browse/) и создал папку с названием FakeFolder; все вроде работает нормально. Затем я отключился от сервера, перешел на тот же URL-адрес, вошел в систему как тот же пользователь и обнаружил ошибку, указанную ниже.

Разрешения, предоставленные пользователю fakeserver \ mitchs, недостаточны для выполнения этой операции.

В замешательстве я пробовал практически все решения, предложенные на этой странице, и все еще не мог создать такое же поведение как локально, так и внешне при переходе по URL-адресу и аутентификации. Затем я щелкнул многоточие FakeFolder, щелкнул «Управление», «Безопасность» (в левой части экрана) и добавил себя как пользователя с полными разрешениями. После отключения от сервера я перешел на https://reports.fakeserver.net/Reports/browse/FakeFolder и смог просмотреть содержимое папки, не обнаружив ошибки прав доступа. Однако, когда я нажал кнопку «Домой», я получил ошибку разрешений.

Для моих целей этого было достаточно, поскольку никому другому никогда не понадобится переходить к корневому URL-адресу, поэтому я просто сделал мысленную заметку, когда мне нужно внести изменения в SSRS, чтобы сначала подключиться к серверу, а затем перейти к URL-адресу отчетов. .

person Mitch Stewart    schedule 25.04.2017

Проблема:

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

Решение:

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

person Vicky    schedule 23.02.2014

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

Open localhost/reports
Go to properties tab (SSRS 2008)
Security->New Role Assignment
Add DOMAIN/USERNAME or DOMAIN/USERGROUP
Check Report builder
person Ajay    schedule 12.03.2014
comment
Это также сработало для меня в случае, когда я импортировал базу данных коллеги. - person malckier; 14.07.2015

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

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

Спасибо!

person Geetanjali Sachdeva    schedule 11.03.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.

person Dhruv Patel    schedule 24.10.2016

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

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

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

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

Настройки папки

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

введите описание изображения здесь

person MovGP0    schedule 14.01.2019

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

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

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

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

person T0t3sMcG0t3s    schedule 26.07.2013

Для служб SQL Reporting Services 2012 с пакетом обновления 1 (SP1) и SharePoint 2013.

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

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

person Kevin Cole -MCM-    schedule 25.09.2013

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

person Vijay    schedule 05.01.2016

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

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

Это должно сработать,

Удачи!

person Community    schedule 04.09.2009

Запустите BIDS от имени администратора, несмотря на существующее членство в группе администраторов.

person Alexander Kashtalyan    schedule 03.05.2012
comment
Нет необходимости запускать в качестве администратора, другой ответ на вопрос о лучшем решении, предоставляя пользователю, который должен создать отчет, правильные привилегии. Работа от имени администратора никогда не является хорошей идеей, если ее можно избежать. - person Paul Hiemstra; 03.05.2012