You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins Windows节点Selenium测试IWA认证失败问题求助

问题分析与解决方案

可能导致Jenkins机器无法通过IWA的原因

  • 代理配置拦截内网请求:Jenkins机器的注册表代理没有排除内网域名(corp-name.com),Chrome会通过代理访问内网认证服务,而代理通常不会转发NTLM/Kerberos这类Windows认证凭证,直接导致IWA失败。本地机器无代理,请求直接走内网,所以正常。
  • Chrome启动参数不完整:你只加了--auth-server-whitelist,但IWA还需要其他关键参数,而且如果是通过Selenium启动Chrome,单独用命令行启动的参数不会被Selenium的Chrome实例继承,等于没生效。
  • Jenkins服务账号权限不足:Jenkins默认可能用本地系统账号运行,这个账号没有域认证的权限,也没有访问内网认证服务的凭证缓存;而你本地是用自己的域账号登录,系统自动缓存了凭证,所以能自动过IWA。
  • 凭证缓存缺失:本地机器有你的域登录凭证缓存,但Jenkins服务运行的账号没有对应的凭证,无法自动提交给认证服务。

可落地的解决方案

1. 排除内网域名的代理配置

不管是系统代理还是Chrome的代理,都要把*.corp-name.com加入代理例外列表:

  • 如果是通过注册表配置的系统代理,找到对应的代理设置项(通常在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings),修改ProxyOverride值,添加*.corp-name.com;。
  • 或者在Chrome启动参数里添加--proxy-bypass-list="*.corp-name.com",确保内网请求不走代理。

2. 给Selenium的Chrome实例配置完整的IWA参数

不要单独用命令行启动Chrome,而是在你的Selenium代码里把IWA相关参数加到ChromeOptions中,示例代码(Java为例):

ChromeOptions chromeOptions = new ChromeOptions();
// 允许指定域名使用IWA
chromeOptions.addArguments("--auth-server-whitelist=*.corp-name.com");
// 允许Kerberos凭证委托(对域环境的IWA很关键)
chromeOptions.addArguments("--auth-negotiate-delegate-whitelist=*.corp-name.com");
// 内网域名不走代理
chromeOptions.addArguments("--proxy-bypass-list=*.corp-name.com");
// 初始化驱动
WebDriver driver = new ChromeDriver(chromeOptions);

3. 修改Jenkins服务的运行账号

把Jenkins服务的运行账号换成有域权限的账号(能访问认证服务的域账号):

  1. 打开Windows服务管理器,找到Jenkins服务。
  2. 右键选择「属性」,切换到「登录」标签页。
  3. 选择「此账户」,输入你的域账号(格式DOMAIN\username)和密码,点击确定。
  4. 重启Jenkins服务,这样Chrome会以这个域账号的身份运行,自动使用域凭证过IWA。

4. 预存认证凭证(备选方案)

如果上面的方法都不行,可以在Jenkins机器上用cmdkey命令预存认证服务的凭证:

cmdkey /add:auth-service-name.corp-name.com /user:DOMAIN\your-account /pass:your-password

注意:密码明文输入有安全风险,建议用Jenkins的凭证管理功能存储密码,再通过构建参数传递执行这个命令。

5. 通过组策略/注册表强制配置Chrome的IWA参数

如果Jenkins机器在企业域内,可以通过组策略或者注册表直接配置Chrome的IWA白名单:

  • 注册表路径:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome
  • 添加两个字符串值:
    • AuthServerWhitelist:值为*.corp-name.com
    • AuthNegotiateDelegateWhitelist:值为*.corp-name.com
      配置后重启Chrome生效。

内容的提问来源于stack exchange,提问作者Andrei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 13:12:35