问题标签 [session-cookies]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
7717 浏览

authentication - CakePHP 会话超时问题

我在 CakePHP 中的身份验证有问题。无论我尝试什么,Cake 要么在每次请求后告诉我我已取消身份验证,要么我仍然通过身份验证,即使我之前关闭了浏览器。

我将用几句话解释我的身份验证系统是如何工作的。用户登录,remember me选中或不选中复选框。如果选中,我将创建一个 cookie,以便用户在下次访问该站点时自动登录。基本上,当用户关闭他的浏览器时,我需要删除 Cake 存储在浏览器中的所有会话 cookie。这样,当用户回来时,如果他不想被记住,他会看到登录页面,或者remember me如果他选择存储它,则会自动从 cookie 登录。

问题是我使用 core.php 中的 Session.timeout 和 Security.level 都没有积极的结果。如果我将超时设置为 0,Cake 将在每次请求后取消我的身份验证,因此我无法查看任何页面。如果我为超时设置任何其他值,用户可能会关闭浏览器,当他重新打开它时,他可能仍然登录,因为 Cake 会话没有过期。

总之,我怎样才能在浏览器关闭时自动删除会话cookie?

0 投票
2 回答
915 浏览

session - 如何通过 HTTP 请求区分一台移动设备与另一台移动设备

我有一个可以从移动设备访问的 Web 应用程序。我需要检测一些请求是从一个设备发出的,而另一些是从另一个设备发出的。我不一定需要知道唯一的设备 ID 或类似的东西,我只需要将一个设备与另一个设备区分开来。我考虑过使用IP地址,但我担心某些运营商可能对某些地区的所有设备都有相似的IP。有没有一种通用的方法来做到这一点?谢谢!

0 投票
4 回答
31984 浏览

java - 安卓会话管理

是否有用于 Android 会话管理的特定库?我需要在普通的 Android 应用程序中管理我的会话。不在WebView。我可以从我的 post 方法设置会话。但是当我发送另一个请求时,会话丢失了。有人可以帮我解决这个问题吗?

当我尝试访问会话丢失的同一主机时:

我得到登录页面响应正文。

0 投票
1 回答
683 浏览

asp.net - 我的 cookie 在 asp.net 页面中消失了

我正在处理刷新页面后 cookie 消失的问题。我对这个页面完全陌生,不知道客户端/服务器端的任何代码,所以我决定通过 fiddler 跟踪 http。

这是一个没有指定过期日期的会话 cookie,域路径也没有。我在刷新期间检查了所有 http 请求,在响应头中没有发现与“Set-Cookie”相关的内容,但 cookie 就消失了。

此问题发生在 IE、FF、Chrome 中。我不认为这是与浏览器相关的问题。

由于我不拥有服务器端代码,因此无法通过 cookie 名称搜索代码。知道可能是什么问题吗?

0 投票
4 回答
2869 浏览

asp.net - 我们如何使会话不使用 cookie?

我知道这是在我的作业问题中。请帮忙

0 投票
1 回答
1634 浏览

http - 将 =、& 和冒号放在 cookie 中

可能重复:
cookie 中允许的字符

我需要在 cookie 中分隔值。所以我选择了 &'s 来分隔名称=值对,就像我在 URL 中那样。一个名字也可以有多个值,所以我用冒号分隔它们。

我的问题是这是否合法?我需要对所有内容进行 URL 编码吗?这些值里面可以有冒号,所以我想我会对这些值进行 URL 编码,以确保值中的冒号不会与分隔符冲突。我在某处读到,用撇号将整个 cookie 括起来也可以,这有意义吗?

如果这不合法,那么存储我的多个名称/值对的最佳方法是什么,这些名称/值对通常每个名称都有多个值(按特定顺序,所以我不能只复制名称/值)?

0 投票
1 回答
142 浏览

api - 有关 API 的 Web 安全问题

我正在构建一个没有服务器端身份验证的 API。将为会话生成一个唯一的密钥(假设密钥很长且无法猜测),但不会在客户端上设置 cookie。客户端可以是带有 AJAX 的 Web 浏览器、使用 CURL 的 PHP 脚本或桌面应用程序。我想象的正常交易过程将是:

初遇

  1. 客户端发出初始请求,调用 start_session 方法
  2. 服务器生成一个密钥并将其与一些初始数据一起返回
  3. 客户端存储密钥供以后使用(例如 JavaScript 使用密钥设置 cookie)

下一个请求

  1. 客户端再次请求服务器,调用一些 set_data 方法,提供原始会话密钥,以及大量私人数据,如信用卡号、法律案件信息等。
  2. 服务器响应,并且响应成功消息

另一个请求

  1. 客户端再次请求服务器,提供原始会话密钥,并调用一些 get_data 方法
  2. 服务器以某种格式(例如 XML、JSON 等)响应所有私有数据

会话密钥如果不使用,将在 20 分钟后过期,并且所有 API URI 都需要 SSL

我的担忧/问题是:我是否需要担心客户端是否泄露了会话密钥。如果没有身份验证,我相信原始请求者会将会话密钥保密。这是常见/安全的做法吗?

0 投票
8 回答
67082 浏览

php - PHP 中的 session_unset() 和 session_destroy() 有什么区别?

来自php.net文档:

session_destroy — 销毁注册到会话的所有数据

session_unset — 释放所有会话变量

我的三部分问题是:

这两个函数看起来非常相似。
两者之间的真正区别是什么?

两者似乎都删除了注册到会话的所有变量。他们中的任何一个实际上会破坏会话本身吗?如果没有,你如何做到这一点(销毁会话本身)。

这两个函数都没有在客户端删除会话 cookie 是否正确?

0 投票
1 回答
6086 浏览

asp.net - 获取会话 cookie 名称

是否可以获得中等信任级别的会话 cookie 名称?下面的代码在完全信任的情况下工作,但在中等信任级别引发安全异常。

0 投票
4 回答
49494 浏览

websphere - 如何测试 httpOnly cookie 标志

我在 websphere 中为 jsession cookie 设置了以下属性 com.ibm.ws.webcontainer.HTTPOnlyCookies

知道如何最好地在 Firefox 或 IE 中使用 JavaScript 进行测试吗?