SQL Server Reporting Services 2008 R2 - 文件夹和报表安全性

标签 sql sql-server reporting-services ssrs-2008-r2

有什么方法可以列出(使用 SSRS 报告或通过 SQL 代码查询)、用户名 安全性已针对根文件夹、子文件夹或报告进行分配?

我被要求确定为审核,哪些 AD 组有权访问该根文件夹中的所有根文件夹和子文件夹,甚至可以访问个人报告级别 - 谁的有权访问!

如何完成这个请求?

最佳答案

您可以查询 ReportServer 数据库以获取此信息,例如

SELECT 
    CASE [Catalog].[Type]
        WHEN 1 THEN 'Folder'
        WHEN 2 THEN 'Report'
        WHEN 3 THEN 'Resource'
        WHEN 4 THEN 'Linked Report'
        WHEN 5 THEN 'Data Source'
        WHEN 6 THEN 'Report Model'
        WHEN 8 THEN 'Shared Dataset'
        WHEN 9 THEN 'Report Part'       
    END AS CatalogType,
    [Catalog].[Type]
    --, [Catalog].ItemID 
    ,[Catalog].Name
    , Roles.RoleName
    , Users.UserName
FROM PolicyUserRole 
INNER JOIN Roles ON PolicyUserRole.RoleID = Roles.RoleID
INNER JOIN Policies ON PolicyUserRole.PolicyID = Policies.PolicyID
INNER JOIN Users ON PolicyUserRole.UserID = Users.UserID
INNER JOIN [Catalog] ON PolicyUserRole.PolicyID = [Catalog].PolicyID
ORDER BY 
    1
    , [Catalog].ItemID
    , [Catalog].Name
    , Roles.RoleName
    , Users.UserName

关于SQL Server Reporting Services 2008 R2 - 文件夹和报表安全性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16920251/

相关文章:

mysql - 两个表之间的多列连接

SQL 查询内部连接与临时表

c# - SQL 数据读取器 : Invalid attempt to read when no data is present

.net - 我可以每 3 秒轮询一次数据库吗?

sql-server - 将nodejs Rest api连接到Azure SQL Server

excel - 带有 Logo 图像的 SSRS 报告导出至 Excel

.net - 中等信任度下进程内数据库的选项

mysql - 获取新行排序中值的位置

sql-server - 从 Azure VM 使用 SQL AZure 进行复制

asp.net-mvc-4 - 如何在 MVC4 中呈现远程 ReportViewer aspx 页面?