Java 如何保护chromedriver使用的端口?

Java 如何保护chromedriver使用的端口?,java,google-chrome,selenium-webdriver,webdriver,selenium-chromedriver,Java,Google Chrome,Selenium Webdriver,Webdriver,Selenium Chromedriver,通常当我运行chromedriver时,我总是得到这个输出,我确信每个人在运行chromedriver时都会得到这个输出。这不是整个输出,而是关于一个特定的句子 Only local connections are allowed. Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code. 正如标题所说,我总是能得到输出。如何确保端口Ch

通常当我运行
chromedriver
时,我总是得到这个输出,我确信每个人在运行
chromedriver
时都会得到这个输出。这不是整个输出,而是关于一个特定的句子

Only local connections are allowed. 
Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
正如标题所说,我总是能得到输出。如何确保端口ChromeDriver仅使用受保护的端口?

此信息消息

Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
。。。是由ChromeDriver v2.46引起的错误导致的


分析 根据讨论,在函数中,甚至在调用
logging::InitLogging
之前(在函数的最后一行),一些日志消息编写得太早。在Linux和Mac OS上,结果是OK,默认日志目的地是预期的位置。但是在Windows上,默认的日志目标是名为
debug.log
的文件

因此ChromeDriver团队需要在调用
logging::InitLogging
之后,删除方法末尾的两个
VLOG
调用

此问题已通过解决,修复程序可在ChromeDriver 73.x中找到

保护chromedriver使用的端口 由于@barancev ChromeDriver试图使用依赖于系统的临时端口范围检测器找到一个空闲端口,因此我们对端口使用情况无能为力。是在程序请求任何可用的用户端口时由操作系统创建的短期端点。操作系统从预定义的范围(通常介于1024和65535之间)选择端口号,并在相关TCP连接终止后释放端口

默认情况下,系统最多可以创建大约4000个临时端口,这些端口在Windows Server 2003上并行运行,在Windows Server 2008上大约可以创建16000个临时端口


解决方案 升级到ChromeDriver 73.x将解决此问题


奥特罗 这些日志消息反映了

ChromeDriver是一种强大的工具,它会在坏人手中造成伤害。使用ChromeDriver时,请遵循以下建议以确保其安全:

  • 默认情况下,ChromeDriver只允许本地连接。如果需要从远程主机连接到ChromeDriver,请使用命令行上的
    --whitelisted ips
    开关指定允许连接到ChromeDriver的IP地址列表
  • 如果可能,请使用无法访问敏感本地或网络数据的测试帐户运行ChromeDriver。ChromeDriver不应使用特权帐户运行
  • 如果可能,在Docker或虚拟机等受保护的环境中运行ChromeDriver
  • 使用防火墙防止未经授权的远程连接到ChromeDriver
  • 如果您通过第三方工具(如Selenium Server)使用ChromeDriver,请确保同时保护这些工具的网络端口
  • 使用最新版本的ChromeDriver和Chrome
您可以在Chrome上找到受限端口列表

此信息消息

Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
。。。是由ChromeDriver v2.46引起的错误导致的


分析 根据讨论,在函数中,甚至在调用
logging::InitLogging
之前(在函数的最后一行),一些日志消息编写得太早。在Linux和Mac OS上,结果是OK,默认日志目的地是预期的位置。但是在Windows上,默认的日志目标是名为
debug.log
的文件

因此ChromeDriver团队需要在调用
logging::InitLogging
之后,删除方法末尾的两个
VLOG
调用

此问题已通过解决,修复程序可在ChromeDriver 73.x中找到

保护chromedriver使用的端口 由于@barancev ChromeDriver试图使用依赖于系统的临时端口范围检测器找到一个空闲端口,因此我们对端口使用情况无能为力。是在程序请求任何可用的用户端口时由操作系统创建的短期端点。操作系统从预定义的范围(通常介于1024和65535之间)选择端口号,并在相关TCP连接终止后释放端口

默认情况下,系统最多可以创建大约4000个临时端口,这些端口在Windows Server 2003上并行运行,在Windows Server 2008上大约可以创建16000个临时端口


解决方案 升级到ChromeDriver 73.x将解决此问题


奥特罗 这些日志消息反映了

ChromeDriver是一种强大的工具,它会在坏人手中造成伤害。使用ChromeDriver时,请遵循以下建议以确保其安全:

  • 默认情况下,ChromeDriver只允许本地连接。如果需要从远程主机连接到ChromeDriver,请使用命令行上的
    --whitelisted ips
    开关指定允许连接到ChromeDriver的IP地址列表
  • 如果可能,请使用无法访问敏感本地或网络数据的测试帐户运行ChromeDriver。ChromeDriver不应使用特权帐户运行
  • 如果可能,在Docker或虚拟机等受保护的环境中运行ChromeDriver
  • 使用防火墙防止未经授权的远程连接到ChromeDriver
  • 如果您通过第三方工具(如Selenium Server)使用ChromeDriver,请确保同时保护这些工具的网络端口
  • 使用最新版本的ChromeDriver和Chrome
您可以在Chrome上找到受限端口列表


我也有同样的问题,我所做的就是在链接中添加https。如: 驱动程序。获取(“”)


这解决了问题,我的脚本正在运行。

我也遇到了同样的问题,我所做的只是在链接中添加https。如: 驱动程序。获取(“”)

这个解决方案