SSRS 2017访问HTTPS提示凭据但HTTP无需输入如何解决
SSRS 2017 HTTPS访问强制弹出凭据校验提示的解决方法
这个问题的核心原因是默认配置下,HTTPS站点未被纳入本地Intranet安全区无法自动传递Windows凭据,或是SSRS服务端身份验证配置未适配HTTPS协议,可按以下步骤操作解决:
1. 客户端安全区配置
- 打开Windows系统的「Internet选项」,切换到安全标签页,选中「本地Intranet」,点击「站点」→「高级」
- 将你的SSRS HTTPS访问地址添加到站点列表,例如
https://your-ssrs-domain.com,保存设置 - 返回安全标签页,点击「自定义级别」,滚动到最下方的「用户身份验证」分类,在「登录」选项下选择「仅在Intranet区域自动登录」或「自动使用当前用户名和密码登录」,确认生效
2. 服务端SSRS身份验证配置调整
- 进入SSRS安装路径,默认路径为
C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\,找到配置文件RSReportServer.config,修改前先备份原文件 - 定位到
<AuthenticationTypes>节点,确认配置包含集成验证规则,不要仅保留基础验证,正确示例如下:
<AuthenticationTypes> <RSWindowsNegotiate /> <RSWindowsNTLM /> </AuthenticationTypes>
- 确认配置无误后保存文件,执行
Restart-Service SSRS命令重启SSRS服务生效
3. 域环境SPN配置(仅域部署场景需要)
如果你的SSRS服务使用域账号运行,需要为服务账号注册对应域名的SPN,执行以下命令:
setspn -S HTTP/your-ssrs-domain.com DOMAIN\ssrs-service-account setspn -S HTTPS/your-ssrs-domain.com DOMAIN\ssrs-service-account
- 如果使用本地系统账号运行SSRS,将命令后段的账号替换为
DOMAIN\server-name$ - 配置完成后客户端执行
klist purge清空本地Kerberos票据缓存,再重新访问测试即可
如果是公网访问场景不需要Windows集成验证,可切换为Forms表单验证,但需要额外开发自定义登录逻辑,不适合需要免验证访问的场景。
内容的提问来源于stack exchange,提问作者larryr
相关产品推荐
相关产品推荐

