众所周知,可以使用Reporting Manager创建SSRS用户,可以通过Reporting Service配置管理器实用程序中提供的URL进行访问。
但是,我的要求是使用查询 创建新的SSRS用户 。我只是想知道是否可以这样做。如果是,怎么样?
答案 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)。