token验证失败

rest-framework:认证组件

亡梦爱人 提交于 2019-11-26 17:29:12
一 认证简介:    只有认证通过的用户才能访问指定的url地址,比如:查询课程信息,需要登录之后才能查看,没有登录,就不能查看,这时候需要用到认证组件 二 局部使用 models.py class User(models.Model): name=models.CharField(max_length=32) pwd=models.CharField(max_length=64) user_type=models.IntegerField(choices=((1,"超级管理员"),(2,"普通管理员"),(3,"2b用户")),default=3) #跟User表做一对一关联 class Token(models.Model): user=models.OneToOneField(to='User') token = models.CharField(max_length=64) 新建认证类(验证通过return两个参数) rom rest_framework.authentication import BaseAuthentication from app01 import models from rest_framework.exceptions import AuthenticationFailed from rest_framework.permissions

互联网安全架构平台设计

。_饼干妹妹 提交于 2019-11-26 17:13:06
常见的Web安全漏洞 (1). XSS 攻击 什么是XSS攻击手段 XSS攻击使用Javascript脚本注入进行攻击 例如在提交表单后,展示到另一个页面,可能会受到XSS脚本注入,读取本地cookie远程发送给黑客服务器端。 <script>alert('sss')</script> < < &ltscript> > > <script>window.location.href='http://www.baidu.com';</script> 对应html源代码: <script>alert('sss')</script> 最好使用火狐浏览器演示效果 如何防御XSS攻击 将脚本特殊字符,转换成html源代码进行展示。 汉子编码http://www.mytju.com/classcode/tools/encode_gb2312.asp 步骤:编写过滤器拦截所有getParameter参数,重写httpservletwrapp方法 将参数特殊字符转换成html源代码保存. // 重写HttpServletRequestWrapper 防止XSS攻击 public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { private HttpServletRequest request; /** *

PHP JWT token实现

谁说胖子不能爱 提交于 2019-11-26 14:16:34
原文链接:https://www.jb51.net/article/146790.htm 机制: 代码如下: <?php /** * PHP实现jwt */ class Jwt { //头部 private static $header = array ( 'alg' => 'HS256' , //生成signature的算法 'typ' => 'JWT' //类型 ); //使用HMAC生成信息摘要时所使用的密钥 private static $key = '123456' ; /** * 获取jwt token * @param array $payload jwt载荷 格式如下非必须 * [ * 'iss'=>'jwt_admin', //该JWT的签发者 * 'iat'=>time(), //签发时间 * 'exp'=>time()+7200, //过期时间 * 'nbf'=>time()+60, //该时间之前不接收处理该Token * 'sub'=>'www.admin.com', //面向的用户 * 'jti'=>md5(uniqid('JWT').time()) //该Token唯一标识 * ] * @return bool|string */ public static function getToken( array $payload ) { if ( is

spring boot+spring security集成以及Druid数据库连接池的问题

↘锁芯ラ 提交于 2019-11-26 12:12:29
贴工程目录,其中bll目录下是service+dao层,common是一些公用的模块及功能类,web是controller层 用到了druid及Redis,工具及配置类目录(本文不介绍如何配置druid及Redis,但是我会把源文件放上) web文件目录结构 接下来,说下大体的学习研究思路,在这块我是分了三部分来做验证的,这三部分只有securityconfig配置类有所区别   第一部分就是前后端不分离的security认证;   第二部是前后端分离,使用security+JWT认证;   第三部分是一个项目中既包含前段的web验证,也包含API的jwt认证; 一、第一部分的验证: pom文件 1    <!-- security --> 2 <dependency> 3 <groupId>org.springframework.boot</groupId> 4 <artifactId>spring-boot-starter-security</artifactId> 5 </dependency> 6 <!-- jwt --> 7 <dependency> 8 <groupId>io.jsonwebtoken</groupId> 9 <artifactId>jjwt</artifactId> 10 <version>0.9.0</version> 11 </dependency