Q1:为什么我想要一个无人值守的执行帐户?
Q2:如果我不使用无人参与执行帐户,使用哪个帐户运行报告?
问题3:如果我在运行报告时收到以下错误消息: “报表服务器遇到配置错误。无人参与执行帐户登录失败。(rsServerConfigurationError)登录失败。请确保用户名和密码正确。(rsLogonFailed)登录失败:用户名未知或密码错误”。
我了解无人参与执行帐户的用户名和/或密码错误。但是,使用的用户名和密码在哪里?我的意思是,应该在SQL Server中添加无人参与执行帐户还是存储在报告中的用户名和密码?即使在SSRS配置工具中更改用户名和密码,报表也不会运行。那么,旧帐户信息似乎存储在某个地方?
我一直在谷歌上搜索,但我没有全面了解。
谢谢!
答案 0 :(得分:9)
MSDN article有关于此的非常详细的信息。
从那里你的问题的答案是:
Q1:如果您不想为数据源设置凭据并希望数据源工作,即使用户无法输入其凭据(订阅),也应设置无人参与执行帐户或其他预定的执行。) 来自链接的MSDN文章:
无人参与的报告处理帐户主要用于连接 到外部服务器,而不是作为数据库服务器的登录。如果你 想要使用帐户凭据登录数据库,您必须 在连接字符串中指定凭据。你可以指定 如果数据库服务器支持Windows,则集成安全性= SSPI 集成安全性和用于无人值守报告的帐户 处理有权读取数据库。
大多数SSRS安装不需要无人参与执行帐户。他们使用数据源中的“安全存储在报表服务器中的凭据”选项。
Q2:我不确定“运行报告”的含义,但SSRS服务帐户始终负责报告的呈现和传送,无论是设置了无人参与的执行帐户还是不。与数据源的连接将使用数据源中指定的凭据。仅当数据源设置为“不需要凭据”时,才会使用无人参与的Exec帐户。
问题3:此帐户可能根本不使用,但SSRS仍会检查域中的凭据。如果您的数据源都没有设置为“不需要凭据”,那么我建议您从SSRS配置中删除该帐户。
答案 1 :(得分:4)
您的问题可能由this MSDN article回答。对于Q1“为什么?”:
- 通过网络发送连接请求,以获取使用数据库身份验证的报告...
- 检索报告中使用的外部图像文件...
问题2:无人参与执行帐户无法确定谁运行报告。它只是决定了上面两件事。该报告由报告服务器执行,该流程在您配置的自己的帐户下运行。
问题3:请参阅链接问题中的“如何存储帐户信息”部分。我不确定为什么配置工具中的更改不会立即生效,您可能需要单独调试(尝试重启一次或两次等)。如果您无法确定那个问题,请务必根据您的具体情况开始一个新的SO问题。