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

营销型网站备案云南建设工程有限公司

营销型网站备案,云南建设工程有限公司,重庆中信建投期货有限公司,wordpress牛站背景 在实际开发过程中#xff0c;我们通常会涉及到数据加密的问题。本文重点探讨两个方面#xff1a;一是外部接口调用时的数据加密#xff0c;二是服务间调用的数据加密与解密。 对于外部接口调用#xff0c;每个用户将拥有独立的动态 AES 加密密钥#xff08;KEY我们通常会涉及到数据加密的问题。本文重点探讨两个方面一是外部接口调用时的数据加密二是服务间调用的数据加密与解密。 对于外部接口调用每个用户将拥有独立的动态 AES 加密密钥KEY和初始向量IV。在用户每次重新登录后系统会重新生成 KEY 和 IV以保证调用端的唯一性。这种机制不仅提高了数据传输的安全性还能有效限制非法调用。 对于服务间的调用我们则采用系统级的 KEY 和 IV 对 API 调用的数据进行加密和解密。这种方式适用于系统内部的安全保障确保服务间通信的可靠性和安全性。 通过上述两种方式我们能够满足不同场景下的加密需求同时有效提升系统的安全性和调用端的独特性。 注解类 通常用在controller上上面用到了枚举用来标识接口的加密方式默认为系统加密码因为一开始是准备用于服务间调用的。 Target({ElementType.METHOD}) Retention(RetentionPolicy.RUNTIME) Documented Indexed public interface ApiEncrypt {//加密方式ApiEncryptType encryptType() default ApiEncryptType.BY_SYSTEM;} AOP类 在 AOP 的 doAfter 方法中对结果进行拦截和输出是常见的操作。如果您对其实现原理感兴趣可以查阅相关资料以深入了解。 其中核心的加解密功能主要由 ApiEncryptUtil 类实现。以下是相关的代码片段 Aspect Slf4j public class ApiEncryptAspect {Pointcut(annotation(com.unknow.first.api.encrypt.annotation.ApiEncrypt))public void apiEncryptPointcut() {}AfterReturning(value apiEncryptPointcut(), returning result)public void after(JoinPoint joinPoint, CommonApiResultObject result) throws Throwable {Signature signature joinPoint.getSignature();MethodSignature msg (MethodSignature) signature;//获取注解标注的方法Method method joinPoint.getTarget().getClass().getMethod(msg.getName(), msg.getParameterTypes());//通过方法获取注解final ApiEncrypt apiEncrypt method.getAnnotation(ApiEncrypt.class);ApiEncryptUtil.encryptData(result, apiEncrypt.encryptType());} } 示例代码 GetMapping(/api/encrypt/user)ApiOperation(api加密-用户密钥加密)ApiEncrypt(encryptType BY_USER)SystemResource(authMethod AuthMethod.ALLSYSTEMUSER)public CommonApiResultObject testEncryptByUserKey() {MapString, Object value new HashMap();value.put(test1, 测试1);value.put(test2, 测试2);return CommonApiResult.createSuccessResult(value);} 总结 这种加密方式在一定程度上模拟了云平台中 AK/SK 机制的加密模式但与其不同的是我们的 AK/SK 是动态生成的。这主要是基于外部对接用户的特点考虑到会话通常持续时间较长因此动态生成的 AK/SK 不会快速过期同时也能够有效确保会话终端的唯一性。 未来我们计划进一步扩展功能允许为外部调用用户配置固定的 AK/SK以满足特定场景下的需求。以下是相关代码参考 GitCode - 全球开发者的开源社区,开源代码托管平台GitCode是面向全球开发者的开源社区,包括原创博客,开源代码托管,代码协作,项目管理等。与开发者社区互动,提升您的研发效率和质量。https://gitcode.com/YouYouLongLong/springcloud-framework/tree/master/core-common-parent/api-encrypt-common
http://www.hkea.cn/news/14286818/

相关文章:

  • 各省施工备案网站wordpress目录图片不显示
  • 不收费的网站域名 去掉wordpress
  • 公司网站备案需要多久住宅设计网站推荐
  • 动漫网站建设规划书模板ie 插件 wordpress
  • 企业网站会员功能如何创建自己的微信公众号
  • 网站建设 中企动力烟台网站名字 备案
  • 百度快速收录在线提交工具网站优化及推广
  • 陕西省建设网站建立网站的费用策划
  • 网站建设内容策略有哪些搜索引擎市场份额2023
  • 浦口区网站建站wordpress如何秒开
  • 网站采集转载wordpress图标字体不显示
  • 写资料的网站有哪些内容jannah wordpress
  • 公司注册网站入口安徽合肥中国建设银行网站首页
  • 爱站网关键词查询网站wordpress设置首主导航
  • 自建英文网站软文营销网站
  • 潍坊网站制作人才招聘电影网站网页设计实训报告
  • 怎么上传文件到ftp网站阿里云配置网站
  • 专业做毕业设计网站设计标签wordpress
  • 微博付费推广有用吗西安网络优化哪家好
  • 网站建设收费标准渠道广州网站建设公司奇亿网站建设
  • 南昌专业网站建设公司深圳网站建设公
  • 做视频网站 许可网站开发 简历
  • 熟练掌握网站开发技术响应式中文网站模板
  • 衣联网和一起做网站 哪家强dede部署两个网站
  • 营销型网站设计官网深圳 网站开发
  • 涞源县住房和城乡建设局网站论坛网站如何备案
  • dedecms 网站 经常无法连接网站建站公司
  • 企业建设网站公司名称大全动态型网站建设
  • 文学网站建设电子商务网站建设ppt模板
  • 浪漫网站建设998元网站建设优化