使用查询创建新SSRS用户的可能性

时间:2016-08-18 18:24:53

标签: sql-server reporting-services ssrs-2008 database-administration

众所周知,可以使用Reporting Manager创建SSRS用户,可以通过Reporting Service配置管理器实用程序中提供的URL进行访问。

但是,我的要求是使用查询 创建新的SSRS用户 。我只是想知道是否可以这样做。如果是,怎么样?

3 个答案:

答案 0 :(得分:0)

类似的东西应该有用。

USE ReportServer
GO 

IF NOT EXISTS (SELECT * FROM master.dbo.syslogins WHERE loginname = N'loginname')
CREATE LOGIN [loginname] FROM WINDOWS
GO
CREATE USER [loginname] FOR LOGIN [loginname]
GO

答案 1 :(得分:0)

您无法使用报告管理器URL创建用户。权限管理/角色分配只能通过它完成。

向[ReportServer]数据库添加登录/用户并不意味着用户可以访问报告。

组或用户名应为以下格式的Windows域用户或组帐户:<domain>\<account>

https://msdn.microsoft.com/en-us/library/ms156034.aspx?f=255&MSPPError=-2147217396

答案 2 :(得分:0)

有一种方法可以满足您在查询中检查用户访问权限的要求。首先,在报表管理器中,为所有用户提供“浏览器”角色(例如,“NT AUTHORITY \ Authenticated Users”)。然后,将报告的当前用户传递给数据库查询。

可以使用报表表达式User!UserID检索报表的当前用户。在我的环境中,这将以<DOMAIN>\<WINDOWS USER NAME>的形式返回。有关详细信息,请参阅MSDN Built-in Globals and Users References (Report Builder and SSRS)