gpt4 book ai didi

firefox - Selenium IDE : How to detect secure cookies on page loaded with http://?

转载 作者:行者123 更新时间:2023-12-02 03:45:12 24 4
gpt4 key购买 nike

我使用的是 Firefox 22 和 Selenium IDE 2.2.0。

我已经使用 HTTP 协议(protocol)(​​不是 HTTPS)在 firefox 中加载了一个页面。我确定该页面设置了安全 cookie(作为嵌入式 AJAX 请求的结果)。我可以使用浏览器内部 url chrome://web-developer/content/generated/view-cookie-information.html 来验证这一点——因为在其他 cookie 中,该页面显示了这样的 cookie:

Name    WC_AUTHENTICATION_5122759
Value 5122759%2cDKppXa7BAqnZ0ERDLb0Wee%2bXqUk%3d
Host .testserver.dk
Path /
Expires At end of session
Secure Yes
HttpOnly No

但是,当我在 Selenium IDE 中运行 assertCookie 时,我只能看到不安全的 cookie。 IE。 Selenium IDE 会检测到所有 cookies - 除了上面那个 -

正在执行:|assertCookie | glob:WC_AUTHENTICATION_* | | 产生这组可见的 cookie:

[error] Actual value 'JSESSIONID=0000uCQdh2FZ0ZA8z-O5zcGoUtD:-1;
WC_PERSISTENT=lT8Z5tbkQrvLhNm%2bGyCj%2bh4yPAU%3d%0d%0a%3b2013%2d07%2d05+13%3a18%3a18%2e807%5f1373023098807%2d3048%5f10201%5f5122827%2c%2d100%2cDKK%5f10201;
WC_SESSION_ESTABLISHED=true;
WC_ACTIVEPOINTER=%2d100%2c10201; WC_USERACTIVITY_5122827=5122827%2c10201%2cnull%2cnull%2cnull%2cnull%2cnull%2cnull%2cnull%2cnull%2cy6bjcrZgvCVe5c52BBKvcItxyF5lLravpDq9rd9I0ZmRfRNxcC2oG13Eyug3kKgbtLOHVLxm9T76%0d%0a%2fGJFLp5bOrkPoNqmc38TIr%2fO7eU%2fbd7Mfny2kQg7v6xGweYoRkXYgAEz91rH0QavFhlOjpd12A%3d%3d;'
did not match 'glob:WC_AUTHENTICATION_*'

那么有谁知道如何使用 Selenium IDE 来验证加载了 http://(而非 https://)的页面上是否存在安全 cookie?

最佳答案

可悲的是,您的行为违反了规范。假定安全 cookie 仅在连接安全时才可用。因此,如果您使用 HTTP 连接,则看不到它。

但是,如果这只是在您的测试机器上(而不是您的最终用户),您可以使用 Fiddler 修改来自服务器的响应。使用 Fiddler,您可以进行编程,例如,如果您看到此 cookie,添加另一个 cookie,或去除安全标志。

编辑:

有关 Selenium 和 cookie 的一些背景信息:

Selenium 通过浏览器将 JavaScript 作为页面的一部分工作。因为它本质上是页面的一部分,所以它必须遵循与页面相同的所有规则。这意味着它仍然必须遵守 cookie 的安全规则。仅安全 cookie 只能在安全连接上读取,因此如果 Selenium 不在安全连接上,则无法读取安全 cookie。

HTTP 请求进来的地方是 cookie 是 HTTP header 的一部分。请求(来自浏览器)和响应(来自服务器)都有一个 HTTP header 。 Cookie 存在于两者中。

您想验证服务器是否设置了 cookie,因此您想要检查来自服务器的 HTTP 响应是否存在 cookie。但是,由于安全限制,您不能从 Selenium 中。这些安全限制由浏览器强制执行。所有信誉良好的浏览器都强制执行这些政策,因为如果没有这些政策,最终用户的凭据将很容易泄露。

这就是 Fiddler 发挥作用的地方。Fiddler 在浏览器访问它之前在较低级别检查 HTTP 数据。因此,您可以在数据到达浏览器之前使用 Fiddler 对其进行操作,以提供某种 cookie 存在的指示。

关于firefox - Selenium IDE : How to detect secure cookies on page loaded with http://?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17488104/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com