Tag: 会话

cookies与会议

几个月前我开始使用PHP。 为了为我的网站创build一个login系统,我阅读了关于cookie和会话及其差异(cookie存储在用户的浏览器和服务器上的会话)。 那时候,我更喜欢cookies(而不喜欢cookies?!),只是说:“谁在乎呢?我把它存储在我的服务器上没有什么好处理,所以我继续使用cookies我的学士gradle项目。 然而,在做了我的应用程序的大部分之后,我听说对于存储用户ID的特殊情况,会话更合适。 所以我开始考虑如果陪审团问我为什么使用cookies而不是会话,我会说些什么? 我只是这个原因(我不需要存储有关用户的内部信息)。 这足够作为一个原因吗? 还是不止这个? 你能告诉我使用cookies保留用户ID的优点/缺点吗? 感谢您在StackOverflow中的所有!

使JSON Web令牌无效

对于我正在研究的一个新的node.js项目,我正考虑从基于cookie的会话方法切换(我的意思是将id存储到包含用户浏览器中的用户会话的键值存储)到使用JSON Web Tokens(jwt)的基于令牌的会话方法(无键值存储)。 该项目是一个利用socket.io的游戏 – 在一个会话中会有多个通信通道(web和socket.io)的情况下,基于令牌的会话将非常有用。 如何使用jwt方法从服务器提供令牌/会话失效? 我也想了解我应该用这种模式去寻找哪些常见(或不常见)的陷阱/攻击。 例如,如果这种模式容易受到与基于会话存储/ cookie的方法相同/不同types的攻击的影响。 所以,说我有以下(改编自这个和这个 ): 会话存储login: 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 […]

如何使用REST API进行身份validation? (浏览器+本机客户端)

我正在使用Rails构build一个Web应用程序。 目前,我正在使用HTTP会话的devise很容易设置,它运作良好。 该应用程序由一个提供AJAX Web应用程序的URL组成。 其余的可用URL属于REST API。 所以,一切和每一个小数据请求都是通过AJAX完成的。 现在我想扩展整个事情来支持本地客户端。 我读了很多关于无状态身份validation,http基本和摘要auth,http会话,cookie,xsrf等等。现在我觉得我不能有一个安全的应用程序,因为总有办法劫持它的一些部分。 1 .: HTTP会话比。 无状态身份validation令牌 有什么不同? 我不明白。 HTTP会话: 客户端请求一个URL(第一个请求到服务器) 服务器给出正常的响应加上一些唯一的string(==会话ID) 客户端必须发送这个string与每个请求(这是使用HTTP标头自动完成) 客户端login – >服务器记住这个特定的会话ID现在login 客户端访问一个页面,需要auth – >没有特别的事情做,因为会话ID将自动通过HTTP头部发送到服务器 无状态身份validation令牌: 客户端请求URL(对服务器的第一个请求) 服务器只是给出正常的响应, 没有任何密钥或令牌或ID (这里没什么特别的) 客户端login – >服务器创build一个授权令牌,并将该令牌发送给响应中的客户端 客户端访问页面,需要身份validation – >客户端必须提交身份validation令牌 对我来说这两种方式看起来都很相似 使用Rails,我还可以select将会话存储在数据库中… Devise将使用无状态身份validation令牌。 2:authentication方法 现在我用{"user":{"email":"e@mail.com","password":"p455w0rd"}}使用POST /users/sign_in 。 但是还有其他的可能性,比如HTTP基本authentication和HTTP摘要authentication,还有像oAuth这样的解决scheme(对我来说太大了)。 从我读过的内容来看: 关于sign_in安全性,当前的POST /users/sign_in和HTTP基本authentication之间没有区别。 两者都使用明文。 对于sign_out HTTP基本身份validation有一个缺点:退出只能closures浏览器窗口 HTTP摘要authentication有一个巨大的优势:它根本不传输密码(只是密码和随机生成的string散列) (德文)维基百科说:所有浏览器都不支持HTTP摘要authentication。 也许这个信息是老路? 我需要的: 用户名和哈希密码(bcrypt)存储在数据库中。 […]

会话null在ASP.Net MVC控制器构造函数中

为什么在控制器的构造函数中会话是空的? 它可以从Action方法访问。 据推测,因为MVC路由框架负责新控制器,它没有(重新)实例化会议在这一点上。 有谁知道这是否是devise,如果是这样,为什么? [我设法通过使用延迟加载模式来解决这个问题。]

列出所有活动的ASP.NET会话

我如何列出(并遍历)所有当前的ASP.NET会话?

与PHP 5.3和会话文件夹的问题

我最近升级到PHP 5.3,从那以后,我得到(零星的)错误消息,这表明Apache(或可能是更清洁的会话文件)没有权限存储会话的文件夹。 这是随机发生的,不能用精确的步骤复制,这让我猜测它是会话更清晰。 任何人有这种错误的经验吗? 错误消息(在session_start()行上触发)是: ps_files_cleanup_dir:opendir(/ var / lib / php5)失败:权限被拒绝。 ls -ltr在会话目录中给出: drwx-wx-wt 2 root root 4096 2010-05-25 12:39 php5 在这个目录中,我可以看到由www-data拥有的会话文件,这是我的Apache,并且应用程序确实工作正常。 这让我想知道在哪个用户会话GC运行?

在ASP.NET中,什么时候应该使用Session.Clear()而不是Session.Abandon()?

Session.Clear()和Session.Abandon()都消除了会话variables。 据我了解,放弃()结束当前会话,并导致创build一个新的会话,从而导致结束和启动事件触发。 在大多数情况下,最好调用Abandon(),例如将用户login。 有没有我会使用Clear()的场景? 性能差异有多大?

通过Angular.js维护会话

我正在使用AngularJS框架开展一个项目。 我很新的使用这个框架; 在过去,我只使用纯JavaScript和jQuery。 该项目是一个小众市场的网页devise应用程序。 当用户在devise时在页面之间移动时,我想维护他们正在进行的所有更改的会话。 现在,如果用户login,我们使用数据库中的数据加载会话。 当用户点击保存button时,我们用会话数据更新数据库。 有人告诉我,我可以保持与Angular相似的会话。 这可能吗? 如果是的话,你可以请教我一个不关注指令或UI的教程吗? 如果这是不可能的,还有其他可行的select吗?

PHP替代session_is_registered

有没有人知道PHP5中不推荐使用的函数session_is_registered的替代方法? 这是我的代码: ob_start(); session_start(); if(!session_is_registered(myusername)) { header("location:main_login.php"); } ob_flush(); 谢谢, 毛罗

服务器如何与RMI中的客户端进行会话

我希望有人告诉我在哪里寻找如何在RMI中的客户端和服务器之间进行会话,即为了search的目的,这个概念的名称是什么?