PHP 板


LINE

看板 PHP  RSS
> 推 GALINE: 不要把登入/帐号资讯放在 cookie 里面,只存session id > → GALINE: 登入後的权限放在session里面不让client碰 > session id该怎麽写QQ 有教学吗? 简单的答案: 别管 cookie,跟他分手,不要用它。 程式开始前先呼叫 session_start(),然後把资料都存进 $_SESSION,不要存 cookie。 登出的时候记得把 $_SESSION 里面对应的参数全部清掉。 ----------------------------------------------- 稍微详细一点的回答: 关於 session,可以想成是 PHP 对於每一个使用者都在 server side 都开一块空间存 个人资料。你可以在 session 里面放「这人登入的帐号是啥,权限是啥」...之类 的东西。因为在 server 上所以使用者碰不到,不能自己修改 写资料进 $_SESSION 这个 super global 就等於是写资料到 session 里面。 如果 session 被启用,这个变数里面的资料会一直留着,直到 session 放太久过期 在使用他之前你需要呼叫 session_start(),除非机器有设定自动 session start 但是每个 HTTP request 都是等价的,我要怎麽知道哪个 request 是谁? 答案是 PHP 会发给每个人一个临时身份 ID,也就是所谓的 session id。例如: 小明进站 -> Server 发给小明 ID 是 1 小桃进站 -> Server 发给小桃 ID 是 2 之後小明跟小桃的每一个 request 都会带着 session id server 只要看到 session id 是 1 就知道那是小明, 2 就是小桃,3 就是有人来乱... session id 通常会放在 cookie 里面,所以每次 request 都会自动带给 server 这一段 PHP 会帮你做掉,你不用(也不该)自己对 cookie 动这一段手脚 当然,对於有能力的使用者他可以乱改 cookie 里面的 session id 但是除非他知道其他人的 session id,不然他乱改只会让自己被登出 另外,现实生活中的 session id 不会是 1/2/3,而是 ByOK3vjFD75aPnrF7C2HmdnV6QZcEbzWoWiBYEnLerjQ99zWpBng 这样一大串,所以要猜也不是那麽好猜到,除非你面对的人超厉害... 假设你一切做对,那麽 cookie 里面只会剩下一堆乱七八糟的ID 没办法从 cookie 里面找到帐号密码或权限...之类的资料 cookie 也不是完全不能用,只是以「登入」来说不该用... ----------------------------------------------- 这只是初阶,更多 cookie 跟 session 的安全性讨论可以看这篇文章 http://devco.re/blog/2014/06/03/http-session-protection/ 如果看不懂...就...表示你还没有能力担心到这块,慢慢学吧... -- 莉娜用魔法爆破进入屋内。 劫犯从另一个房间里出现,大叫道︰「你是谁!」 莉娜︰「我是个可疑的女人!」 劫犯无言以对。 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 60.248.122.206
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PHP/M.1464160732.A.262.html ※ 编辑: GALINE (60.248.122.206), 05/25/2016 15:19:37 ※ 编辑: GALINE (60.248.122.206), 05/25/2016 15:21:16
1F:推 Neisseria: 推 05/25 15:21
2F:推 shadowjohn: 下一步就多站台共享session path、memory share... 05/25 15:27
3F:推 wilson200106: 下一步Redis(咦 05/25 15:48
4F:推 shadowjohn: 应该是又全部打掉重写,然後又换别人问这个问题XD 05/25 16:25
5F:→ GALINE: Redis 好用,不过 scale out 很麻烦... 05/25 16:28
6F:推 HwangTW: 谢谢指教 05/25 16:57
7F:推 LMGG: 认真讲解给推 05/25 20:59
8F:推 GuYueHu: 请问通常用session作帐号登入的部份会设timer吗 05/27 08:51
9F:→ GuYueHu: 还是放到session自动timeout? 这样会有安全疑虑吗 05/27 08:51
10F:→ GALINE: 看...需求?我是一下没想到什麽情况会需要登入跟session 05/27 12:46
11F:→ GALINE: 的 timeout 时间要不一样就是了 05/27 12:46
12F:推 j355066: 推 05/27 14:55
13F:推 imhaha: 借问一下~cookie可以个别设定到期的时间,session似乎没 05/28 01:53
14F:→ imhaha: 办法做到这点,只能全数清除对吧(? 05/28 01:53
15F:→ GALINE: 有「自己纪录expire time」这招,每次读值都检查一次... 05/30 11:05







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP