在项目开发中,简易的安全机制可以采用token验证的方式,如下token工具类:
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.apache.commons.lang.RandomStringUtils; import com.sfbm.carmall.constant.Constant; import com.sfbm.core.util.string.StringUtils; public class TokenUtils{ public static final String TOKEN_KEY_NUM = "_TOKEN_NUM"; /** * 生成token值 * @param req * @return */ public static String createToken(String tokenKey, HttpServletRequest req){ HttpSession session = req.getSession(); String token = RandomStringUtils.random(20, Constant.randomChar); session.setAttribute(tokenKey, token); session.setAttribute(tokenKey + TOKEN_KEY_NUM, 0); return token; } /** * 验证token是否正确 * @param req * @return */ public static boolean authTokenIsOk(HttpServletRequest req, String tokenKey, String token){ if(StringUtils.isBlank(token)){ return false; } HttpSession session = req.getSession(); String sessionToken = (String)session.getAttribute(tokenKey); if(StringUtils.equals(sessionToken, token)){ return true; } return false; } /** * 验证token是否正确 * @param req * @return */ public static boolean authTokenNumIsOk(HttpServletRequest req, String tokenKey, String token){ if(StringUtils.isBlank(token)){ return false; } HttpSession session = req.getSession(); //记录下验证的次数 Integer num = (Integer)session.getAttribute(tokenKey + TOKEN_KEY_NUM); if(num < 5){ session.setAttribute(tokenKey + TOKEN_KEY_NUM, num+1); return true; } return false; } }
相关推荐
java token 工具类 java token 工具类java token 工具类 java token 工具类java token 工具类 java token 工具类java token 工具类 java token 工具类java token 工具类 java token 工具类java token 工具类 java ...
本源码包含公众号菜单初始化开发,菜单事件开发,普通token和网页授权token开发工具类,js_ticket获取和缓存,获取openid开发,公众号网络请求封装,xml格式转换工具类,文件上传工具类,关注事件/取消关注事件开发...
在实际开发中,我们通常会创建这样的工具类来简化API调用的复杂性,提高代码的可读性和可维护性。`SharePointUtil`可能包含了如连接SharePoint站点、创建或获取列表、上传和下载文件等方法。 在使用Java API与...
Token工具类可以帮助开发者生成、验证和管理这些安全令牌,确保用户身份的安全性和请求的合法性。 2. **加密算法**:加密是保护数据安全的重要手段,包括对称加密(如AES)和非对称加密(如RSA)。加密工具类可以...
JwtToken令牌工具类
小程序登录开发通常是调用wx.login获取code,然后发送到后台,后台请求微信拿到用户openId... 具体封装类api.js如下,本次代码采用uniapp框架开发,实际项目中每次发起后台请求只需要调用req方法即可做到无感刷新token
获取登录token;出生日期获取年龄 出生日期获取属相 出生日期获取星座 日期转换处理工具类等等
"认证码Token加密解密代码详解" 认证码Token加密解密代码是指使用加密算法对认证码Token进行加密和解密操作的过程。该代码使用Java语言编写,主要涉及到DESede加密算法、SHA-1哈希算法和Base64编码等技术。 一、...
5. **安全与认证**:为了确保通信的安全,工具类会使用钉钉的OAuth2.0协议进行授权,获取访问令牌(AccessToken)和刷新令牌(RefreshToken),并可能有自动刷新令牌的机制,以保持长期有效。 6. **异常处理**:在...
MD5、RSA、Base64Utils、DialogUtil、ZXingUtils、GlideUtil、、、工具类 自己总结了一些必备的工具类,可直接放入工程,简单调用 对OkHttp进行了封装,简单调用,便于操作 进行了post、get、文件上传等进行封装
"个推推送工具类"是专门用于Android和iOS平台的推送服务实现,它提供了一整套功能丰富的API和DTO(Data Transfer Object)数据传输对象,帮助开发者轻松地实现在移动应用中的消息推送功能。个推作为国内知名的第三方...
在Java编程中,工具类(Utility Class)是包含各种静态方法的类,这些方法通常用于执行特定的辅助任务,而不具备实例化对象的能力。这样的设计旨在提供便捷的函数式服务,减少代码重复,并提高代码的可重用性。在...
融云工具类是一套专为开发者设计的实用工具集,主要功能是帮助用户获取融云的Token,并且实现系统消息的发送。融云作为一个知名的即时通讯(IM)平台,提供了丰富的API和SDK,使得开发者可以方便地在自己的应用中...
Token可以分为两类:内置Token和自定义Token。内置Token是Jenkins自带的Token,例如BUILD_NUMBER、JOB_DESCRIPTION等。这些Token可以直接使用,而无需手动添加。自定义Token则需要用户手动添加,例如可以添加一个...
本文将详细介绍一个针对Android 6.0及以上版本动态申请权限的工具类。 首先,我们需要理解Android的权限管理机制。在Android 6.0之前,如果应用在清单文件中声明了某个权限,用户在安装应用时会一次性授予所有权限...
工具类通常会提供`refreshAccessToken(String refreshToken)`方法,用于获取新的access_token。刷新token的接口是`https://api.weixin.qq.com/sns/oauth2/refresh_token`。 6. **安全性考虑**: AppSecret是非常...
JSON Web Token(JWT)是一种开放的标准(RFC 7519),定义了一种紧凑的、自包含的方式来安全地在各方之间传输信息作为JSON对象。这种信息可以被验证和信任,因为它是数字签名的。JWT在身份验证和授权场景中广泛应用...
在这个例子中,`Auth`类用于创建认证对象,`upload_token`方法则生成上传Token。 总的来说,生成七牛Token是使用七牛云存储服务的关键步骤之一,它确保了上传操作的安全性。理解并正确使用这个机制,可以帮助你在...
推送钉钉消息工具类。 演示了从获取钉钉消息发送TOKEN,到组装消息报文及调用钉钉消息SDK完成通知消息的发送。
乐优商城JWT工具类是为了解决在乐优商城系统中的身份验证和授权问题而设计的。JWT(JSON Web Token)是一种轻量级的身份验证机制,广泛应用于现代Web应用程序,尤其是微服务架构中。它允许服务端在客户端存储必要的...