사용자 '에게 부여 된 권한이이 작업을 수행하기에 충분하지 않습니다. (rsAccessDenied) "}


99

SSRS (2005)를 사용하여 보고서 모델을 만들고 로컬 서버에 게시했습니다. 그러나 보고서 작성기를 사용하여 게시 한 모델에 대한 보고서를 실행하려고하면 다음 오류가 발생합니다.

보고서 실행 오류 : 사용자에게 부여 된 권한이이 작업을 수행하기에 충분하지 않습니다. (rsAccessDenied)


나는이 도움이 .... 발견 msdn.microsoft.com/en-GB/library/bb630430.aspx Windows가 가정 모두가 ... 표준 사용자입니다
Trabumpaline

답변:


94

보고서 작성기를 실행중인 사용자에 대한 권한이 없기 때문입니다. 해당 사용자 또는 그룹에 보고서 작성기를 실행할 수있는 권한을 부여하면됩니다. 이 기사를 방문 하십시오

또는 바로 가기 :

  1. "관리자 권한으로 실행"을 사용하여 Internet Explorer를 시작합니다.
  2. http : // localhost / reports를 엽니 다 .
  3. 속성 탭으로 이동 (SSRS 2008)
  4. 보안-> 새 역할 할당
  5. DOMAIN / USERNAME 또는 DOMAIN / USERGROUP 추가
  6. 보고서 빌더 확인

8
2012 년에만 해당되는지 확실하지 않지만 "사이트 설정"에서도 보안을 설정해야했습니다.
uli78 2014

15
2014 년, 모두 "폴더 설정"및 "사이트 설정"의 역할 설정
조쉬 노를

4
당신을 도울 수있는 기사에서 한 가지는 IE를 사용하고 "관리자 권한으로 실행"을 구성하는 것입니다. 그런 다음 폴더 설정 (콘텐츠 관리자로 설정) 및 사이트 설정 (역할 : 관리자)으로 이동합니다. 그런 다음 기본 브라우저로 돌아 가면 작동합니다. (저는 2012 년입니다).
토마스 Gandor

4
슬래시 대신 DOMAIN \ USERNAME을 사용해야했습니다.
Paul

4
2 단계에서 실패했습니다. 이 메시지가 나타납니다. 사용자에게 필요한 권한이 없습니다. 충분한 권한이 부여되었고 Windows UAC (사용자 계정 컨트롤) 제한이 해결되었는지 확인합니다.
RDeveloper

18

오래 전 일이라는 것을 알고 있지만 귀하 (또는 다른 신규 사용자)는 다음 방법으로이 문제를 해결할 수 있습니다.

  1. Administrator , IISUser , SQLReportingUser 그룹에 [Domain \ User] 추가
  2. SSRS 구성 도구에서 암호화 키 삭제
  3. 다시 실행 데이터베이스 변경 SSRS 구성 도구를
  4. SSRS 구성 도구 ( http : // localhost / reportserver ) 에서 WebServiceUrl을 엽니 다 .
  5. 수동으로 보고서 폴더 생성
  6. 생성 된 폴더의 속성으로 이동하여 이러한 역할 을 보안에 추가합니다 ( builtin \ users, builtin \ Administrator, domain \ user )
  7. 보고서 배포 및 문제 해결

2
안녕하세요, 저의 문제는 하나만 제외하고 모든 보고서가 작동한다는 것입니다. 오류는 사용자 'NT AUTHORITY \ IUSR'에게 부여 된 권한이이 작업을 수행하기에 충분하지 않습니다. (rsAccessDenied). 하나의 보고서에 어떤 차이가있을 수 있습니까?
Richa 2014

5
이 그룹조차 없어요! 내가 가진 Administrators, IIS_IUSRS, SQLServer2005SQLBrowserUser$User대신에! 이 경우 어떻게해야합니까? 그런 것들이 얼마나 자주 바뀌나요! : 오
user2173353

18

Microsoft BI를 마우스 오른쪽 버튼으로 클릭-> 관리자 권한으로 실행을 클릭-> 기존 SSRS 보고서를 열거 나 새 SSRS 보고서를 만든 다음 보고서를 볼 수있는 하나의 웹 URL을 받게됩니다. 해당 URL을 복사하여 웹 브라우저 (관리자 권한으로 실행)에 붙여 넣으면 보고서보기가 표시됩니다. 웹 서비스에 필수적인 Internet Explorer를 사용할 수 있습니다.

틀렸다면 그냥 글을 써서 이렇게해서 용서 해주세요.


2
관리자 (오른쪽 클릭)로 Visual Studio (BI)를 시작하면 나에게 트릭이 생겼습니다.
maets

10

SQL Reporting Services 구성을 사용하여 URL http : // localhost / reports에 대한 액세스를 구성했는지 확인하십시오 . 이것을하기 위해:

  1. Reporting Services 구성 관리자를 열고-> 보고서 서버 인스턴스에 연결 한 다음-> 보고서 관리자 URL을 클릭합니다.
  2. 보고서 관리자 URL 페이지에서 고급 단추-> 보고서 관리자의 다중 ID에서 추가를 클릭하십시오.
  3. 보고서 관리자 HTTP URL 추가 팝업 상자에서 호스트 헤더를 선택하고 다음을 입력하십시오. localhost
  4. 확인을 클릭하여 변경 사항을 저장합니다.
  5. 이제 관리자 권한으로 실행을 사용하여 Internet Explorer를 시작 / 실행합니다 ... (참고 : http : // localhost / reports 에서 왼쪽 상단 모서리에 '사이트 설정'링크 가 표시되지 않으면 그렇지 않은 것 같습니다. 관리자로 IE를 실행하거나보고 서비스 역할에 컴퓨터 '도메인 \ 사용자 이름'을 할당하지 않은 경우 다음 몇 단계에서이 작업을 수행하는 방법을 참조하십시오.)
  6. 그런 다음 http : // localhost / reports 로 이동하십시오 (컴퓨터의 사용자 이름과 암호로 로그인해야 할 수도 있음).
  7. 이제 SQL Server Reporting Services의 홈 페이지 ( http : //localhost/Reports/Pages/Folder.aspx)로 이동해야합니다.
  8. 홈 페이지에서 속성 탭을 클릭 한 다음 새 역할 할당을 클릭합니다.
  9. 그룹 또는 사용자 이름 텍스트 상자에 오류 메시지에있는 '도메인 \ 사용자 이름'을 추가합니다 (제 경우에는 '도메인 \ 사용자 이름'에 대해 DOUGDELL3-PC \ DOUGDELL3를 추가했습니다. 귀하의 경우 도메인을 찾을 수 있습니다. rsAccessDenied 오류 메시지에서 컴퓨터의 \ username).
  10. 이제 모든 확인란을 선택하십시오. 브라우저, 콘텐츠 관리자, 내 보고서, 게시자, 보고서 작성기를 클릭 한 다음 확인을 클릭합니다.
  11. 이제 도메인 \ 사용자 이름이 보고서 서버에 보고서를 배포 할 수있는 액세스 권한을 부여하는 역할에 할당되어야합니다. Visual Studio 또는 SQL Server Business Intelligence Development Studio를 사용하여 보고서를 로컬 보고서 서버에 배포하는 경우 이제 가능합니다.
  12. 보고서 서버 rsAccessDenied 오류 메시지를 해결하는 데 도움이되기를 바랍니다.

이 자습서는 SQL Server Reporting Services 2008이 설치된 Windows 7 컴퓨터에서 수행되었음을 알려드립니다.

참조 문서 : http://techasp.blogspot.co.uk/2013/06/how-to-fix-reporting-services.html


2
참고 것을 링크 전용 답변 낙심, SO 응답 솔루션 (대 아직 시간이 지남에 따라 부패하는 경향 참조의 다른 경유지)에 대한 검색의 엔드 포인트이어야한다. 여기에 독립형 시놉시스를 추가하고 링크를 참조로 유지하십시오.
kleopatra 2015-08-26

6

또한 애플리케이션 풀의 ID에 올바른 권한이 있는지 확인할 수도 있습니다.

  1. IIS 관리자로 이동

  2. 응용 프로그램 풀을 클릭합니다.

  3. 보고서를 배포 할 사이트의 응용 프로그램 풀을 식별합니다.

  4. ID가 일부 서비스 계정 또는 관리자 권한이있는 사용자 계정으로 설정되어 있는지 확인합니다.

  5. 풀을 중지하고 마우스 오른쪽 단추로 클릭 한 다음 고급 설정 ...을 선택하여 ID를 변경할 수 있습니다.

프로세스 모델 아래에 ID 필드가 있습니다.


1
또한 Windows 2008 R2 서버에서 다음 작업을 수행해야했는데, 저에게는 관리자 모드에서 IE 열기, 즉 Right Clikc IE-> 관리자 권한으로 실행이있었습니다. 그런 다음 http : // {your baseurl} : {your base port} / Reports /로 이동합니다. 저에게는 devsql2008r2 : 80 / Reports입니다. 이것은 내 오류를 해결했습니다. Chrome 또는 Firefox는 여전히 열 수 없습니다.
Vishnoo Rath

즉,이 답변은 SSRS를 호출하려는 사용자 지정 앱이 UserAAppPool ID에서와 같이 실행되는 시나리오를 수정합니다 . 그러나 UserASSRS 서버에서 액세스 권한을 갖도록 구성되지 않았습니다 (예 : BUILTIN\Administrators그룹에 없음). 따라서 수정은 AppPool ID를 도메인의 일부 관리자 사용자로 변경하는 것입니다. 또는 현재 AppPool ID 사용자를 포함하도록 SSRS 설정을 업데이트합니다.
돈 치들

5

보고서 관리자의 사이트 설정> 시스템 수준 역할 정의 구성> ExecuteReport 정의 옵션을 선택한 다음 시스템 사용자 그룹 만들기, 서버 속성의보고 서비스 데이터베이스에 연결에서 해당 그룹에 대한 액세스 권한을 부여하고 그룹을 추가하고 다음과 같은 액세스 권한을 허용합니다. 시스템 사용자 ... 작동합니다


5

SQL2008 / Windows 2008 Enterprise가 있으며 rs.accessdenied, 404, 401 및 503 오류 를 수정하기 위해 수행해야하는 작업입니다 .

  • SQL 보고서 서버 사용자 및 IIS_USR 그룹에 NT 사용자 추가
  • SQL보고 서비스를 로컬 계정으로 변경했습니다 (로컬 관리자가있는 도메인).
  • Reporting Services 구성에서 암호화 키를 삭제했습니다 (목록의 마지막 탭).
  • 그런 다음 작동했습니다.

5

나는 다음 단계를 사용했으며 나를 위해 일하고 있습니다.

Reporting Services 구성 관리자를 열고-> 보고서 서버 인스턴스에 연결 한 다음-> 보고서 관리자 URL을 클릭합니다.

보고서 관리자 URL 페이지에서 고급 단추-> 보고서 관리자의 다중 ID에서 추가를 클릭하십시오.

보고서 관리자 HTTP URL 추가 팝업 상자에서 호스트 헤더를 선택하고 다음을 입력하십시오. localhost 확인을 클릭하여 변경 사항을 저장하십시오.

그때:

  1. 보고서 서버 URL을 복사했습니다.
  2. 관리자 권한으로 Google Chrome / Internet Explorer 실행
  3. 주소 표시 줄에 URL을 붙여넣고 Enter 키를 누릅니다.

Internet Explorer 및 Google Chrome에서는 잘 작동하지만 mozilla Firefox에서는 작동하지 않습니다.

Firefox의 경우 사용자 이름과 비밀번호를 요청하는 경우 제공하지만 작동하지 않습니다. 나는 관리자이고 완전한 권리를 가지고 있습니다.

알리지 않도록 "사용자 계정 컨트롤 설정"변경 세트를 1 개 더 수행했습니다.

Visual Studio에서이 보고서를 배포하는 동안 이러한 유형의 예외가 발생하면 다음 작업을 수행하십시오.

  1. 관리자 권한으로 Google 크롬 / Internet Explorer를 엽니 다.
  2. 보고서 서버 URL을 엽니 다.

3. "새 역할 할당"을 클릭하고 추가 한 다음 사용자 이름을 입력하고 역할을 선택합니다.여기에 이미지 설명 입력

  1. 확인을 클릭하십시오.
  2. 이제 Visual Studio에서 보고서를 배포하면 지정된 서버에서 보고서가 작동하고 배포됩니다.

4

관리자 권한으로 Internet Explorer를 엽니 다.

보고서 URL 열기 http://machinename/reportservername

그런 다음 '폴더 설정'에서 필요한 사용자 그룹에 권한을 부여하십시오.


4

오래되었지만 관련 문제. 보고 서버에 로그인하여 2012 년을 해결했습니다.

  • 로 이동 에 http : // localhost를 / 보고서 /
  • 오른쪽 상단의 '사이트 설정'을 클릭합니다 (보고서 서버에 로그인 할 때만 사용할 수 있음).
  • '보안'탭으로 이동하여 '새 역할 할당'을 클릭합니다.
  • 내 DOMAIN \ USERNAME을 시스템 관리자로 추가했습니다.

이 솔루션에 익숙하다고 말할 수는 없지만 효과가 있고 효과가있는 것이 필요했습니다. 이것이 다른 사람에게 도움이되기를 바랍니다.


4

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을 찾아 볼 필요가있을 때마다 기억해 두었습니다. .


3

문제:

오류 rsAccessDenied : 사용자 'User \ User'에게 부여 된 권한이이 작업을 수행하는 데 충분하지 않습니다.

해결책:

"폴더 설정"> "새 역할 할당"을 클릭 한 다음 '그룹 또는 사용자 이름 텍스트 상자'에 "사용자 \ 사용자"를 입력합니다. 사용자에게 부여 할 역할 확인란을 선택합니다.


2

나를 위해 일한 것은 :

Open localhost/reports
Go to properties tab (SSRS 2008)
Security->New Role Assignment
Add DOMAIN/USERNAME or DOMAIN/USERGROUP
Check Report builder

1
이것은 동료의 데이터베이스를 가져온 경우에도 효과적이었습니다.
malckier

2

이것은 나를 위해 일했습니다-보고서 관리자로 이동하여 사이트 설정 확인-> 보안-> 새 역할 할당-> 사용자 추가

-또한 보고서 관리자의 데이터 세트-> 보고서 데이터 세트-> 보안-> 새 역할 할당-> 필요한 역할을 가진 사용자 추가로 이동하십시오.

감사!


2

오래 전 일이라는 것을 알고 있지만 다른 신규 이민자에게 도움이 될 수 있습니다.

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

Nasser와 마찬가지로 이것이 오래 전 일이라는 것을 알고 있지만 앞으로이 문제가있는 사람을 위해 내 솔루션을 게시하고 싶었습니다.

SharePoint에서 호스팅되는 데이터 연결 라이브러리의 데이터 연결을 사용하도록 보고서를 설정했습니다. 내 문제는 다른 사용자가 사용할 수 있도록 데이터 연결을 '승인'하지 않았다는 것입니다.

찾아야 할 또 다른 사항은 해당 데이터 연결 라이브러리에 대한 권한이 선택한 사용자에게 읽기를 허용하는지 확인하는 것입니다.

조만간 누군가에게 도움이되기를 바랍니다!


1

SQL Reporting Services 2012-SP1 및 SharePoint 2013의 경우.

동일한 문제가 발생했습니다. '[AppPoolAccount]'사용자에게 부여 된 권한이이 작업을 수행하기에 충분하지 않습니다.

서비스 응용 프로그램 설정으로 이동하여 키 관리를 클릭 한 다음 키 변경을 클릭하고 키를 다시 생성하도록했습니다.


1

공유해 주셔서 감사합니다. 1.5 일 동안 어려움을 겪은 후 보고서 서버가 잘못된 도메인 IP로 구성되었음을 알았습니다. 오프라인 인 백업 도메인 IP로 구성되었습니다. 도메인 이름이 나열되지 않은 사용자 그룹 구성에서이를 식별했습니다. IP를 변경하고 보고서 서버를 재부팅하십시오. 문제가 해결되었습니다.


1

보고서는 AD 사용자 (또는 AD 그룹)의 액세스 권한이 충분하지 않은 DataSource 또는 DataView에 액세스하려고 할 수 있습니다.

다음 URL을 확인하십시오.

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

그런 다음 선택 Folder Settings

폴더 설정

(또는 적절한 개인 DataSource또는 DataSet)을 선택하고 Security. 사용자 그룹에는 Browser권한 이 있어야합니다 .

여기에 이미지 설명 입력


0

나를 위해 일한 것은 다음과 같습니다.

  • 사이트 설정으로 이동
  • "사이트 전체 보안 구성"을 클릭하십시오.
  • 상단 표시 줄에서 "새 역할 할당"버튼을 클릭합니다.
  • 새 역할에 "Everyone"이라는 이름을 지정합니다.
  • 사용 가능한 역할 중 "시스템 사용자"만 부여하십시오.
  • "적용"을 클릭하십시오.

그렇게해야합니다.

행운을 빕니다!


0

Administrators 그룹의 기존 멤버 자격에도 불구하고 BIDS를 관리자로 실행합니다.


1
관리자로 실행할 필요가 없으며, 보고서를 생성해야하는 사용자에게 올바른 권한을 제공하여 더 나은 솔루션을 제공하는 다른 답변을 제공합니다. 피할 수 있다면 관리자로 실행하는 것은 결코 좋은 생각이 아닙니다.
Paul Hiemstra
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.