当前位置: 首页 > news >正文

dede 手机网站商标设计网免费

dede 手机网站,商标设计网免费,个人网站建设报价,网页游戏平台模板概述 登录功能是对于每个动态系统来说都是非常基础的功能#xff0c;用以区别用户身份、和对应的权限和信息#xff0c;设计出一套安全的登录方案尤为重要#xff0c;接下来我介绍一下常见的认证机制的登录设计方案。 方案设计 HTTP 是一种无状态的协议#xff0c;客户端…概述 登录功能是对于每个动态系统来说都是非常基础的功能用以区别用户身份、和对应的权限和信息设计出一套安全的登录方案尤为重要接下来我介绍一下常见的认证机制的登录设计方案。 方案设计 HTTP 是一种无状态的协议客户端每次发送请求时首先要和服务器端建立一个连接在请求完成后又会断开这个连接。系统登录的本质是确认用户的合法性和身份。 Cookie Session 登录 在 B/S 系统中登录功能通常都是基于 Cookie 来实现的。当用户登录成功后一般会将登录状态记录到 Session 中。要实现服务端对客户端的登录信息进行验证都需要在客户端保存一些信息SessionId并要求客户端在之后的每次请求中携带它们。在这样的场景下使用 Cookie 无疑是最方便的因此我们一般都会将 Session 的 Id 保存到 Cookie 中当服务端收到请求后通过验证 Cookie 中的信息来判断用户是否登录 。 用户首次登录流程 1、用户访问 www.stark.com/login并输入密码登录。 2、服务器验证密码无误后会创建 SessionId并将它保存起来。 3、服务器端响应这个 HTTP 请求并通过 Set-Cookie 头信息将 SessionId 写入 Cookie 中。 cookice后续校验流程 获取cookice后续的访问就可以直接使用 Cookie 进行身份验证了 1、用户访问 www.stark.com/console 页面时会自动带上第一次登录时写入的 Cookie。 2、服务器端比对 Cookie 中的 SessionId 和保存在服务器端的 SessionId 是否一致。 3、如果一致则身份验证成功访问页面如果无效则需要用户重新登录。 需要注意的是: Cookie Session 的方案中最关键的环节是传递Cookie有时可能会面临Cookie禁用的情况记住只要把Cookie的值传递给服务端得到SessionId即可可以是存储在LocalStorage也可以使用URL 的GET方式传输。 Cookie Session 技术实现 Cookie Session的核心点在于数据的加密和解密的算法在用户登录进行加密、生成Cookie,在之后的交互的时候携带在header的信息头中。 加密函数代码: function passportEncrypt($txt, $key stark-server2024#$!): string {$txt yy-依加衣- . time() . - . $txt;srand((double)microtime() * 1000000);$encrypt_key md5(rand(0, 32000));// 变量初始化$ctr 0;$tmp ;for ($i 0; $i strlen($txt); $i) {$ctr $ctr strlen($encrypt_key) ? 0 : $ctr;$tmp . $encrypt_key[$ctr] . ($txt[$i] ^ $encrypt_key[$ctr]);}return base64_encode(passportKey($tmp, $key)); }function passportKey($txt, $encrypt_key): string {$encrypt_key md5($encrypt_key);$ctr 0;$tmp ;for ($i 0; $i strlen($txt); $i) {$ctr $ctr strlen($encrypt_key) ? 0 : $ctr;$tmp . $txt[$i] ^ $encrypt_key[$ctr];}return $tmp; }字符串解密函数: function passportDecrypt($txt, $key stark-server2024#$!) {$txt str_replace( , , $txt);$txt passportKey(base64_decode($txt), $key);$tmp ;for ($i 0; $i strlen($txt); $i) {if (!isset($txt[$i]) || !isset($txt[$i 1])) {return 0;} else {$tmp . $txt[$i] ^ $txt[$i];}}$tmp explode(-, $tmp);$tmp[3] $tmp[3] ?? 0;return $tmp[3]; }加密解密实现的具体逻辑: //加密 $data [admin_id $adminInfo[admin_id],admin_name $adminInfo[admin_name], ]; $demoStr json_encode($data,JSON_UNESCAPED_UNICODE); $authorization passportEncrypt($demoStr);Cookie::set(Auth-stark, $authorization,[prefix think, expire 3600] );//解密 $json passportDecrypt($authorization); if(mb_strlen($json) 0){$demoData json_decode($json,true); }Token 登录 由于服务器端需要对接大量的客户端也就需要存放大量的 SessionId这样会导致服务器压力过大、无法避免 CSRF 攻击等缺点我们可以使用 Token 的登录方式。 Token是通过服务端生成的一串字符串以作为客户端请求的一个令牌。当第一次登录后服务器会生成一个 Token 并返回给客户端客户端后续访问时只需带上这个 Token 即可完成身份认证很多企业使用JWT的技术来进行登录验证方式。 用户首次登录 1、用户访问 www.stark.com/login输入账号密码并点击登录。 2、服务器端验证账号密码无误创建 Token。 3、服务器端将 Token 返回给客户端由客户端存储在Header头信息里。 后续页面访问 1、用户访问 www.stark.com/login 时带上第一次登录时获取的 Token。 2、服务器端验证该 Token 有效则身份验证成功无效则踢回重新的登录。 Token 生成方式 最常见的 Token 生成方式是使用 JWTJson Web Token它是一种简洁的、自包含的方法用于通信双方之间以 JSON 对象的形式安全的传递信息。 答案其实就在 Token 字符串中其实 Token 并不是一串杂乱无章的字符串而是通过多种算法拼接组合而成的字符串。 JWT 算法主要分为 3 个部分header头信息playload消息体signature签名。 header 部分指定了该 JWT 使用的签名算法playload 部分表明了 JWT 的意图signature 部分为 JWT 的签名主要为了让 JWT 不能被随意篡改。 JWT Token 技术实现 Compose 安装 Jwt 的两种方式,我使用的是6.10版本 : ## 安装 composer require firebase/php-jwt 6.10使用 composer.json 安装加入文件,使用composer install require: {firebase/php-jwt: ^6.10 }Jwt 主要是进行加密和解密$payload定义的是你需要存储的数组信息 public static function encode(int $adminId 0): string {$redis new Redis(config(cache.stores.redis));$secretKey Env::get(JWT.key); // 获取JWT生成签名的密钥$alg Env::get(JWT.alg); // 获取JWT加密算法$payload [admin_id $adminId, // 存储用户IDexp time() Env::get(JWT.exp), // 设定过期时间];$jwt JWT::encode($payload, $secretKey, $alg); // 生成JWT令牌$token config(prefix.auth);$redis-set($token.$adminId, $jwt,Env::get(JWT.exp) - rand(10,99));return $jwt; }解密的逻辑 public static function decode(string $AccessToken ){$secretKey Env::get(JWT.key); // 获取JWT生成签名的密钥$alg Env::get(JWT.alg); // 获取JWT加密算法$secretKeyObj new Key($secretKey,$alg);$headers new stdClass();return JWT::decode($AccessToken, $secretKeyObj,$headers); // 使用JWT解密Token }
文章转载自:
http://www.morning.gqfbl.cn.gov.cn.gqfbl.cn
http://www.morning.qcsbs.cn.gov.cn.qcsbs.cn
http://www.morning.rmyt.cn.gov.cn.rmyt.cn
http://www.morning.qcdtzk.cn.gov.cn.qcdtzk.cn
http://www.morning.fengnue.com.gov.cn.fengnue.com
http://www.morning.nlglm.cn.gov.cn.nlglm.cn
http://www.morning.bntfy.cn.gov.cn.bntfy.cn
http://www.morning.frfpx.cn.gov.cn.frfpx.cn
http://www.morning.xmrmk.cn.gov.cn.xmrmk.cn
http://www.morning.thlzt.cn.gov.cn.thlzt.cn
http://www.morning.jjtwh.cn.gov.cn.jjtwh.cn
http://www.morning.pwmpn.cn.gov.cn.pwmpn.cn
http://www.morning.cmcjp.cn.gov.cn.cmcjp.cn
http://www.morning.xpmwt.cn.gov.cn.xpmwt.cn
http://www.morning.xnwjt.cn.gov.cn.xnwjt.cn
http://www.morning.rcww.cn.gov.cn.rcww.cn
http://www.morning.dmhs.cn.gov.cn.dmhs.cn
http://www.morning.shuangxizhongxin.cn.gov.cn.shuangxizhongxin.cn
http://www.morning.qmbpy.cn.gov.cn.qmbpy.cn
http://www.morning.qclmz.cn.gov.cn.qclmz.cn
http://www.morning.rmqmc.cn.gov.cn.rmqmc.cn
http://www.morning.qpxrr.cn.gov.cn.qpxrr.cn
http://www.morning.phechi.com.gov.cn.phechi.com
http://www.morning.bpmnc.cn.gov.cn.bpmnc.cn
http://www.morning.drndl.cn.gov.cn.drndl.cn
http://www.morning.khlxd.cn.gov.cn.khlxd.cn
http://www.morning.rnlx.cn.gov.cn.rnlx.cn
http://www.morning.gdgylp.com.gov.cn.gdgylp.com
http://www.morning.ndngj.cn.gov.cn.ndngj.cn
http://www.morning.tnwgc.cn.gov.cn.tnwgc.cn
http://www.morning.dtrcl.cn.gov.cn.dtrcl.cn
http://www.morning.hrhwn.cn.gov.cn.hrhwn.cn
http://www.morning.gcthj.cn.gov.cn.gcthj.cn
http://www.morning.bxbkq.cn.gov.cn.bxbkq.cn
http://www.morning.mbhdl.cn.gov.cn.mbhdl.cn
http://www.morning.fktlg.cn.gov.cn.fktlg.cn
http://www.morning.wddmr.cn.gov.cn.wddmr.cn
http://www.morning.wnwjf.cn.gov.cn.wnwjf.cn
http://www.morning.lqws.cn.gov.cn.lqws.cn
http://www.morning.mbhdl.cn.gov.cn.mbhdl.cn
http://www.morning.rlzxr.cn.gov.cn.rlzxr.cn
http://www.morning.zsthg.cn.gov.cn.zsthg.cn
http://www.morning.qggcc.cn.gov.cn.qggcc.cn
http://www.morning.qwpyf.cn.gov.cn.qwpyf.cn
http://www.morning.qsy38.cn.gov.cn.qsy38.cn
http://www.morning.qlxgc.cn.gov.cn.qlxgc.cn
http://www.morning.wyjhq.cn.gov.cn.wyjhq.cn
http://www.morning.zcckq.cn.gov.cn.zcckq.cn
http://www.morning.rnzgf.cn.gov.cn.rnzgf.cn
http://www.morning.mbnhr.cn.gov.cn.mbnhr.cn
http://www.morning.hfnbr.cn.gov.cn.hfnbr.cn
http://www.morning.nbgfk.cn.gov.cn.nbgfk.cn
http://www.morning.qtkdn.cn.gov.cn.qtkdn.cn
http://www.morning.xphls.cn.gov.cn.xphls.cn
http://www.morning.mbdbe.cn.gov.cn.mbdbe.cn
http://www.morning.cbtn.cn.gov.cn.cbtn.cn
http://www.morning.wqcbr.cn.gov.cn.wqcbr.cn
http://www.morning.rhfh.cn.gov.cn.rhfh.cn
http://www.morning.rwlnk.cn.gov.cn.rwlnk.cn
http://www.morning.wspyb.cn.gov.cn.wspyb.cn
http://www.morning.pwlxy.cn.gov.cn.pwlxy.cn
http://www.morning.rwfj.cn.gov.cn.rwfj.cn
http://www.morning.snbrs.cn.gov.cn.snbrs.cn
http://www.morning.blqgc.cn.gov.cn.blqgc.cn
http://www.morning.xtqld.cn.gov.cn.xtqld.cn
http://www.morning.ryfqj.cn.gov.cn.ryfqj.cn
http://www.morning.rqxtb.cn.gov.cn.rqxtb.cn
http://www.morning.gyfwy.cn.gov.cn.gyfwy.cn
http://www.morning.wztlr.cn.gov.cn.wztlr.cn
http://www.morning.yppln.cn.gov.cn.yppln.cn
http://www.morning.tqhpt.cn.gov.cn.tqhpt.cn
http://www.morning.xkjrq.cn.gov.cn.xkjrq.cn
http://www.morning.rfmzs.cn.gov.cn.rfmzs.cn
http://www.morning.rlbc.cn.gov.cn.rlbc.cn
http://www.morning.gcspr.cn.gov.cn.gcspr.cn
http://www.morning.nppml.cn.gov.cn.nppml.cn
http://www.morning.xplng.cn.gov.cn.xplng.cn
http://www.morning.tdfyj.cn.gov.cn.tdfyj.cn
http://www.morning.skqfx.cn.gov.cn.skqfx.cn
http://www.morning.ndltr.cn.gov.cn.ndltr.cn
http://www.tj-hxxt.cn/news/255431.html

相关文章:

  • 金华网站建设明细报价表wordpress评论外链
  • 驻马店网站建设价格百度推广引流多少钱一个月
  • seo整站优化外包哪家好电力建设官方网站
  • 杭州网站建设第一品牌做网站要找什么软件
  • 建设个电商平台网站需要多少钱wordpress代码添加图片
  • 做网站iiwok中国对外建设有限公司网站
  • 众创空间那个网站做的好手册设计网站
  • 自适应网站设计案例求推荐专业的网站建设开发
  • 常州企业微信网站建设2023年时政热点事件
  • 北京网站设计优选刻wordpress去掉导航栏
  • 长春网站建设公司哪家好网络广告发布的形式主要包括
  • 什么网站可以做护考题免费人脉推广软件
  • 平台制作网站公司公司网页如何免费制作
  • 二级域名怎么做网站福州+网站开发
  • 哈尔滨微网站建设公司哪家好外贸保健品wordpress主题商城
  • 深圳建网站一般多少钱新网站建设的感想
  • 智慧团登录官方网站博客 选择 WordPress
  • 腾讯云是做网站的吗免费建站体验
  • 建设工程公开招标网站毕设做系统好还是做网站好
  • 做钓鱼网站要具备什么无锡建设主管部门网站
  • 网站代码优化所有标签网站的空间是
  • 二维码网站建设源码wordpress 搜索增强
  • 什么是网站开发中的分页wordpress 默认头像
  • 古典风格网站模板html做可视化图表的网站
  • 开展我国电子网站建设外贸平台哪个网站最好知乎
  • 怎样做单页销售网站门户网站的种类
  • h5互动网站建设网站开发交流吧
  • 营销型外贸网站网站开发设计模板
  • 展示型网站 营销型网站哪里公司建设网站好
  • 深圳做网站在去那备案网站开发的最后5个阶段