使用query创建新SSRS用户的可能性



我们都知道,SSRS用户可以使用Reporting Manager创建,可以通过Reporting Service配置管理器实用程序中给出的url访问。

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

类似的东西应该可以工作。

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

不能使用报表管理器URL创建用户。权限管理/角色分配只能通过它来完成。

将Login/User添加到[ReportServer]数据库并不意味着用户可以访问报告。

组名或用户名应该是Windows域用户或组帐户,格式如下:<domain><account> .

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

有一种方法可以实现在查询中检查用户访问的要求。首先,在Report Manager中,为所有用户赋予"Browser"角色(例如,"NT AUTHORITYAuthenticated users")。然后,将报告的当前用户传递给数据库查询。

可以使用报表表达式User!UserID检索报表的当前用户。在我的环境中,它以<DOMAIN><WINDOWS USER NAME>的形式返回。有关更多信息,请参阅MSDN内置全局变量和用户参考(报表生成器和SSRS)。

相关内容

  • 没有找到相关文章

最新更新