Questions tagged «session-cookies»

会话cookie使服务器和浏览器能够建立标识的连接(通过cookie)并通过它进行通信。

22
无效的JSON Web令牌
对于我正在研究的一个新的node.js项目,我正在考虑从基于cookie的会话方法切换(这意味着,将ID存储到用户浏览器中包含用户会话的键值存储中)到使用JSON Web令牌(jwt)的基于令牌的会话方法(无键值存储)。 该项目是一个利用socket.io的游戏-在单个会话(web和socket.io)中会有多个通信渠道的情况下,基于令牌的会话将非常有用。 如何使用jwt方法从服务器提供令牌/会话无效? 我还想了解我应该用这种范例寻找哪些常见(或不常见)的陷阱/攻击。例如,如果此范例易受与基于会话存储/ Cookie的方法相同/不同类型的攻击的影响。 所以,说我有以下内容(适应了this和this): 会话商店登录: app.get('/login', function(request, response) { var user = {username: request.body.username, password: request.body.password }; // Validate somehow validate(user, function(isValid, profile) { // Create session token var token= createSessionToken(); // Add to a key-value database KeyValueStore.add({token: {userid: profile.id, expiresInMinutes: 60}}); // The client should save …

4
如何使用cURL发送Cookies?
我读到发送带有卷曲的cookie可行,但不适用于我。 我有一个REST端点为: class LoginResource(restful.Resource): def get(self): print(session) if 'USER_TOKEN' in session: return 'OK' return 'not authorized', 401 当我尝试以以下方式访问时: curl -v -b ~/Downloads/cookies.txt -c ~/Downloads/cookies.txt http://127.0.0.1:5000/ * About to connect() to 127.0.0.1 port 5000 (#0) * Trying 127.0.0.1... * connected * Connected to 127.0.0.1 (127.0.0.1) port 5000 (#0) > GET / …

5
PHP会话修复/劫持
我试图了解有关PHP 会话修复和劫持以及如何防止这些问题的更多信息。我一直在Chris Shiflett的网站上阅读以下两篇文章: 会话固定 会话劫持 但是,我不确定我是否理解正确。 为了帮助防止会话固定,只需调用session_regenerate_id(true);就可以了。成功登录某人后?我想我理解正确。 他还讨论了如何使用通过$ _GET在URL中传递的令牌来防止会话劫持。究竟该怎么做?我猜想有人登录时会生成他们的令牌并将其存储在会话变量中,然后在每个页面上将该会话变量与$ _GET变量的值进行比较吗? 每个会话或每次加载页面时仅需要更改一次此令牌吗? 它们也是防止劫持而不必在URL中传递值的好方法吗?这会容易得多。

30
重定向后PHP会话丢失
如何解决在PHP中重定向后丢失会话的问题? 最近,我遇到了一个非常常见的问题,即在重定向后丢失会话。在搜索该网站后,我仍然找不到任何解决方案(尽管这是最接近的解决方案)。 更新资料 我找到了答案,我想将它发布在这里,以帮助遇到同样问题的任何人。


2
如何进行无状态(无会话)和无cookie的身份验证?
鲍勃使用Web应用程序来实现目标。和: 他的浏览器处于节食状态,因此不支持cookie。 Web应用程序是一种流行的应用程序,它在给定的时刻可以与许多用户打交道-它必须很好地扩展。只要保持会话会限制同时连接的数量,并且当然会带来不可忽略的性能损失,我们可能希望拥有一个无会话系统:) 一些重要的注意事项: 我们确实具有传输安全性(HTTPS及其最好的朋友); 在幕后,Web应用程序代表当前用户(这些系统确实将Bob识别为用户之一)将很多操作委托给外部服务 -这意味着我们必须向他们转发Bob的凭据。 现在,我们如何对Bob进行身份验证(针对每个请求)?哪种方法可以实现这种情况? 通过HTML表单隐藏字段使用凭据打网球 ... 球包含凭据(用户名和密码),两个球拍分别是浏览器和Web应用程序。换句话说,我们可以通过表单字段而不是通过cookie来回传输数据。在每个Web请求中,浏览器都会发布凭据。但是,对于单页应用程序,这看起来像是在橡胶墙上打壁球,而不是打网球,因为包含凭据的Web表单可能会在整个页面生命周期中保持有效 (并且服务器将配置为不提供凭据)。 将用户名和密码存储在页面的上下文中-JavaScript变量等。此处需要单页,恕我直言。 基于加密令牌的身份验证。在这种情况下,登录操作将导致生成加密的安全令牌(用户名+密码+其他内容)。该令牌将被发还给客户端,并且即将到来的请求将带有令牌。这有意义吗?我们已经有了HTTPS ... 其他... 不得已:不要这样做,将凭据存储在会话中!会议很好。有或没有cookie。 关于上述任何想法,您是否会想到任何Web /安全性问题?例如, 超时 -我们可以保留一个timestamp以及凭据(时间戳= Bob输入凭据的时间)。例如,当NOW-timestamp> threshold时,我们可能会拒绝该请求。 跨站点脚本保护-不应有任何不同,对吗? 非常感谢您抽出宝贵的时间阅读本文:)


8
PHP中的session_unset()和session_destroy()有什么区别?
从php.net文档中: session_destroy —销毁注册到会话的所有数据 session_unset —释放所有会话变量 我的三部分问题是: 这两个功能看起来非常相似。 两者之间的真正区别是什么? 两者似乎都删除了注册到会话的所有变量。它们中的任何一个是否实际上破坏了会话本身?如果不是,您如何完成此任务(销毁会话本身)。 这两个函数都没有删除客户端的会话cookie是否正确?



10
检查是否启用了cookie
我正在一个需要JavaScript和会话的页面上工作。我已经有代码来警告用户是否禁用了javascript。现在,我想处理禁用cookie的情况,因为会话ID存储在cookie中。 我只想到了几个主意: 将会话ID嵌入链接和表单中 警告用户如果禁用了cookie,则必须启用cookie(需要帮助来检测cookie是否被禁用) 解决此问题的最佳方法是什么?谢谢 编辑 根据链接的文章,我想出了自己的方法,并认为我可以分享,其他人也许可以使用它,也许我会得到一些批评。(假设您的PHP会话存储在名为的Cookie中PHPSESSID) <div id="form" style="display:none">Content goes here</div> <noscript>Sorry, but Javascript is required</noscript> <script type="text/javascript"><!-- if(document.cookie.indexOf('PHPSESSID')!=-1) document.getElementById('form').style.display=''; else document.write('<p>Sorry, but cookies must be enabled</p>'); --></script>



2
使用SameSite和Secure属性设置Google跟踪代码管理器Cookie
Chrome正在报告以下警告: 在https://www.googletagmanager.com/上设置了与跨站点资源关联的cookie,但未设置该SameSite属性。如果将来的Chrome浏览器版本将cookie设置为SameSite=None和,则仅会提供带有跨站点请求的cookie Secure。您可以在“应用程序”>“存储”>“ Cookies”下的开发人员工具中查看Cookie,并在https://www.chromestatus.com/feature/5088147346030592和https://www.chromestatus.com/feature/5633521622188032上查看更多详细信息。 我有两种此类警告。这三个饼干我看到的是gtm_auth,gtm_preview和gtm_debug。所有会话cookie。我看到gtm_auth设置了Secure属性(SameSite属性为空)。另外两个cookie没有设置任何一个属性。 顺便说一下,它们被分类为分析性cookie,而不是市场营销cookie。 使用Google Tag Manager,如何设置或修改这些Cookie?我不想更新代码中的cookie。我想象使用添加cookie属性应该是可行的Google Tag Manager。Google如何使用Google Analyticsand 解决此问题的立场是什么Google Tag Manager?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.