Answers:
这是因为您对运行报表构建器的用户缺乏特权,因此只需为该用户或组授予运行报表构建器的特权即可。请访问这篇文章
或获取快捷方式:
我知道已经很久了,但是您(或任何其他新手)可以通过以下方法解决此问题
Administrators
,IIS_IUSRS
,SQLServer2005SQLBrowserUser$User
而不是!在这种情况下我该怎么办?这些事情多久更改一次!:o
确保使用SQL Reporting Services配置将访问权限配置为URL http:// localhost / reports。去做这个:
只是为了让您知道本教程是在装有SQL Server Reporting Services 2008的Windows 7计算机上完成的。
参考文章:http : //techasp.blogspot.co.uk/2013/06/how-to-fix-reporting-services.html
您还可以确保您的应用程序池中的身份具有正确的权限。
转到IIS管理器
单击应用程序池
确定要在其上部署报告的站点的应用程序池
检查身份是否已设置为具有管理员权限的某些服务帐户或用户帐户
您可以通过以下方法更改身份:停止池,右键单击它,然后选择“高级设置...”。
“流程模型”下的“标识”字段
UserA
AppPool Identity中的方式运行。但这UserA
没有在SSRS服务器上配置为具有访问权限(例如,不在BUILTIN\Administrators
组中)。因此,解决方法是将AppPool身份更改为域中的某些管理员用户。或更新SSRS设置以包括当前的AppPool Identity用户。
我使用了以下步骤,它正在为我工作。
打开Reporting Services配置管理器->然后连接到报表服务器实例->然后单击报表管理器URL。
在“报表管理器URL”页面中,单击“高级”按钮->,然后在“报表管理器的多个标识”中,单击“添加”。
在“添加报表管理器HTTP URL”弹出框中,选择“主机头”并键入:localhost单击“确定”以保存更改。
然后:
对于我在Internet Explorer和Google Chrome上运行正常,但对mozilla Firefox则不行。
在Firefox询问用户名和密码的情况下,我提供了它,但是它不起作用。我是管理员,拥有全部权利。
我完成了1个更改设置“用户帐户控制设置”,以永不通知。
如果从Visual Studio部署此报表时遇到此类异常,请执行以下操作:
古老但相关的问题。我通过登录报表服务器解决了2012年问题:
不能说我对这种解决方案感到满意,但是我需要一些有效的方法。希望这对其他人有帮助。
设置SSRS 2016之后,我RDP进入服务器(Windows Server 2012 R2),导航到报告URL(https://reports.fakeserver.net/Reports/browse/),并创建了一个名为FakeFolder的文件夹;一切似乎都正常。然后,我与服务器断开连接,浏览到相同的URL,以相同的用户身份登录,并遇到以下错误。
授予用户“ fakeserver \ mitchs”的权限不足以执行此操作。
感到困惑,我尝试了此页面上建议的几乎所有解决方案,但导航到URL并进行身份验证时仍然无法在本地和外部创建相同的行为。然后,我单击FakeFolder的省略号,单击“管理”,单击“安全性”(在屏幕的左侧),然后将自己添加为具有完全权限的用户。与服务器断开连接后,我浏览到https://reports.fakeserver.net/Reports/browse/FakeFolder,并且能够查看文件夹的内容而不会遇到权限错误。但是,当我单击首页时,我收到了权限错误。
就我的目的而言,这已经足够好了,因为别的都不需要浏览到根URL,因此,只要需要更改SSRS以便首先连接到服务器然后浏览到报告URL时,我就进行了心理记录。 。
对我有用的是:
Open localhost/reports
Go to properties tab (SSRS 2008)
Security->New Role Assignment
Add DOMAIN/USERNAME or DOMAIN/USERGROUP
Check Report builder
这对我有用--转到报表管理器,检查站点设置->安全->新角色分配->添加用户
此外,请转到报表管理器中的数据集->您的报表数据集->安全->新角色分配->添加具有所需角色的用户。
谢谢!
我知道这已经很久了,但可能会对其他新手有所帮助,
我决定在请求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提示时,请输入以下代码
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);
在web.config文件中定义了SSRSReportUser,SSRSReportUserPassword,SSRSReportUserDomain,SSRSReportFolder。
就像Nasser一样,我知道这已经有一段时间了,但是我想将我的解决方案发布给以后遇到此问题的任何人。
我进行了报表设置,以便它将在SharePoint上托管的数据连接库中使用数据连接。我的问题是我没有“批准”数据连接,因此其他用户可以使用它。
要寻找的另一件事是确保该数据连接库上的权限也允许读取所选用户。
希望这早晚能对某人有所帮助!
对于SQL Reporting Services 2012-SP1和SharePoint 2013。
我遇到了同样的问题:授予用户[AppPoolAccount]的权限不足以执行此操作。
我进入了服务应用程序设置,单击“密钥管理”,然后单击“更改密钥”并重新生成密钥。
尽管Administrators组现有成员身份,但以管理员身份运行BIDS。