远程链接服务器上的 SSRS 查询
SSRS query on remote linked server
我已经在 Server1
上配置了 SSRS
。
Server2
在 sys.servers
中被 link 编辑为 Server1
。
所有 queries/reports
link 运行 没问题如果我 运行 Server1
对象
我想运行报告Server2
个对象
尝试 1
我为 Server2
创建了一个共享数据源,在共享数据集中构建了查询。
SELECT Field1 FROM Table1
a) 预览 - 运行良好
b) Server1/Reports
抛出此错误:
An error has occurred during report processing. (rsProcessingAborted)
The execution failed for the shared data set 'table1'.
(rsDataSetExecutionError) Query execution failed for dataset
'DataSet1'. (rsErrorExecutingCommand) For more information about this
error navigate to the report server on the local server machine, or
enable remote errors
尝试 2 我尝试使用 Server1,然后从那里 link。因此,在创建数据集时,我使用 Server1
作为来源并构建了此查询
SELECT Field1 FROM Server2.master.dbo.Table1
a) 预览 运行 没问题
b) Server1/Reports
抛出与上面相同的错误
注意:将上述查询更改为 OPENQUERY 会产生相同的结果
如果我查看日志,它会显示:
Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'
它可以连接到 Server1
数据源(因为 SSRS 安装在 Server1 上),但无法连接到 Server2
。我如何授予该用户访问 Server2
?
如何解决上述问题,以便 运行 来自 Server1/Reports
的报告也很好
注意:我使用SQL Server 2017
您正在对报表服务器使用 Windows 身份验证,并再次在共享数据源中使用。这意味着已登录的用户令牌被传递到第二个跃点 Server2。为此,您必须启用 Active Directory 委派。
联系您的网络管理员并要求他们在 Server1 上配置(至少限制)委托,以允许委托连接到 Server2(至少到 SQL 服务器服务)。
我已经在 Server1
上配置了 SSRS
。
Server2
在 sys.servers
中被 link 编辑为 Server1
。
所有 queries/reports
link 运行 没问题如果我 运行 Server1
对象
我想运行报告Server2
个对象
尝试 1
我为 Server2
创建了一个共享数据源,在共享数据集中构建了查询。
SELECT Field1 FROM Table1
a) 预览 - 运行良好
b) Server1/Reports
抛出此错误:
An error has occurred during report processing. (rsProcessingAborted) The execution failed for the shared data set 'table1'. (rsDataSetExecutionError) Query execution failed for dataset 'DataSet1'. (rsErrorExecutingCommand) For more information about this error navigate to the report server on the local server machine, or enable remote errors
尝试 2 我尝试使用 Server1,然后从那里 link。因此,在创建数据集时,我使用 Server1
作为来源并构建了此查询
SELECT Field1 FROM Server2.master.dbo.Table1
a) 预览 运行 没问题
b) Server1/Reports
抛出与上面相同的错误
注意:将上述查询更改为 OPENQUERY 会产生相同的结果
如果我查看日志,它会显示:
Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'
它可以连接到 Server1
数据源(因为 SSRS 安装在 Server1 上),但无法连接到 Server2
。我如何授予该用户访问 Server2
?
如何解决上述问题,以便 运行 来自 Server1/Reports
的报告也很好
注意:我使用SQL Server 2017
您正在对报表服务器使用 Windows 身份验证,并再次在共享数据源中使用。这意味着已登录的用户令牌被传递到第二个跃点 Server2。为此,您必须启用 Active Directory 委派。
联系您的网络管理员并要求他们在 Server1 上配置(至少限制)委托,以允许委托连接到 Server2(至少到 SQL 服务器服务)。