5 涂宗勋

尚未进行身份认证

【修心.修性.修行】

等级
TA的排名 1k+

记软件开发满五年(二)——盘点这些年的改变

前言人生从来就不是单一和乏味的,总是充满着理性和感性。作为一个喜欢文科的人,我应该是比较感性的,但是作为一个程序员,我似乎更多的是应该保持理性。感性容易引起别人的共鸣,而理性更应该拿数据说话,也许显得有些无趣,却可能更有实用的价值。行业的改变五年来,我经历了三家公司,也可以说是两家。前两家都是外包给移动,后边这一家是外包给联通。乍一看,似乎我一直从事的都是电信行业,但实际上并不是,我只...

2019-11-15 00:07:30

记软件开发满五年——人怕入错行,男儿当自强

时光一晃就五年,遥想当初太可怜。幸好毅然做软件,不再重复死循环!时光悠悠,似是转眼间,进入软件行业就已满了五年。五年,整个世界,整个社会都发生着翻天覆地的变化,可以让一个人失去很多,也可以让一个人拥有很多!五年来,我很庆幸自己进入了这个行业,没有放弃,一路前行,也让我对“人怕入错行”这句俗语有了十分深刻的体会。还记得刚从学校出来时,由于各种原因,我进过工厂,干过销售,去过工地,也...

2019-10-17 22:45:20

jwt、oauth2和oidc等认证授权技术的理解

前言jwt、oauth2、oidc等,都是和认证授权相关的规范或者解决方案,因此要理解他们,就需要从业务场景的适用性一步步的分析和认识。一、认证授权业务场景理解就个人目前的理解来看,一个好的软件系统的构成可能需要包含但不限于以下几个方面:功能性能拓展安全不论是从公司或者项目角度而言,还是从个人开发者的角度而言,有相当大一部分可能都只在功能部分停留。何谓功能,我的理解就是实现业...

2019-10-08 20:03:37

近期keycloak、nginx、https杂记

一、keycloak和nginx部署问题1.问题描述单独使用keycloak进行sso,在本地可以正常的单点登录。但部署到nginx,并且经过spring gateway时,却在输入用户名、密码之后抛出401错误码,提示no state cookie。2.解决思路经观察,发现正常情况下单点登录的请求url和参数中redirect_url是一致的,而经过nginx和spring gatew...

2019-09-11 19:57:54

springboot2集成oauth2和keycloak以及admin rest api

前言以keycloak作为sso认证中心服务端,springboot2的客户端集成方式有很多种,例如仅集成keycloak的jar包方式、集成springsecurity的方式、以及security+oauth2的方式等。上述三种方式,从实现以及功能上来说均是一个比一个复杂。另外,springboot作为普通客户端的同时,也可以进行更多的集成,进而实现对keycloak服务端的操作,这就涉...

2019-08-07 21:52:12

keycloak使用及sprinboot集成客户端记录(一)

一、SSOSSO,中文名称“单点登录”,英文全称是SingleSignOn。个人理解,大概就是统一入口登录、统一用户和鉴权管理、共用服务认证的意思。百度百科的标准解释如下:单点登录(SingleSignOn,SSO),就是通过用户的一次性鉴别登录。当用户在身份认证服务器上登录一次以后,即可获得访问单点登录系统中其他联邦系统和应用软件的权限。同时这种实现是不需要管理员对用户的登录状态或其他信...

2019-07-23 11:50:10

近期nginx使用总结

一、nginx背景了解nginx由俄罗斯人开发,设计的初始目的是成为一个http服务器,以用来解决C10K问题,C10K实际上就是同时连接处理10000个连接请求的意思。nginx具有多种web服务器功能特性,例如负载均衡、缓存、访问控制等,而我个人目前主要是因为ca证书的问题而使用nginx,因此更多的是集中在访问控制上,进一步细分的话,就是反向代理和ssl。二、nginx作为http服务...

2019-06-16 23:23:18

nginx获取ca证书信息并传递到java后端使用

背景说明在多数开放性的网络系统中,https的证书校验可能都只需要进行单向认证,即只需要客户端校验服务端证书,例如12306、支付宝等。但是,在一些特定交互的系统中,并不完全开放的网络场景下,为了进一步提升交互双方的可靠性,客户端和服务端都需要校验对方的证书信息,即双向认证。服务端和客户端这样一个网络架构中,一般是一对多的关系,即一个服务端对应着多个客户端。因此在证书双向认证的过程中,也就...

2019-06-11 22:40:15

加密解密和CA证书杂记

最近两三个月,断断续续的一直在处理CA证书相关的事情。CA证书本质上也是一种加解密,因此就自然而然的涉及到一些加密和解密的技术,这就让我在了解CA的同时,也对加密和解密有了更进一步的认识和理解。以下便是一个比较杂,但是似乎又有一定关联性的总结,我分了这样几个部分:1.加密和签名2.对称加密和非对称加密3.密钥、公钥和私钥4.图解签名和加密的必要性5.CA证书转换加密和签名网络通...

2019-05-21 20:11:09

CA双向认证补充:java客户端使用优化及证书链和Android证书

说明上篇详细描述了自定义ca证书的步骤以及浏览器作为客户端和java作为客户端的使用方法。但是之前的java客户端使用代码还存在一定的问题:首先,之前的客户端根证书是在代码外部使用keytool安装到jdk证书库,次数多了就显得麻烦;其次,之前的代码只能支持域名访问,这样没有真实域名时就必须更改host文件;于是通过查找网络资料修改之后,便有了新的操作方式,使得java客户端可以支持ip...

2019-04-11 18:15:42

CA双向认证完整实现步骤(附java客户端代码)

一、基础概念注:以下概念除专业名词外,均为个人理解,不具备权威性。1、什么是系统安全管理置于公网的系统,通常都需要一定的安全管理,据我个人理解,这里的安全管理主要分三个方面:一是应用内的权限控制,比如具体应用的用户名、密码等;二是应用数据传输过程中的安全机制,例如各种报文的加解密方案;三是数据传输前的通讯安全机制,保证通讯双方都是可靠可信任的,PKI就是其中一个解决方案。2、什么是P...

2019-03-18 18:35:41

读《淘宝技术这十年》有感

前言不知不觉间,在微信读书看书已经有好几十个小时了,也许是因为都是零碎时间看一看,所以一直也都仅限于看,只有输入而没有输出。互联网时代知识太多,只限于看的层面可能要不了多久又会全部忘记,希望能从这里开始有一定的产出,让看书这件事更有意义一点,而不是变成一个消磨时间的手段。刚好,最近读完的《淘宝技术这十年》在读的过程中做了一些摘抄,对有一些内容也是深有感触。论成功学的好坏从前往后看,首先比...

2019-02-18 22:52:11

支付宝支付开发要点记录

完整的走完一个支付业务流程后,发现还是有不少需要注意的地方,为了避免时间长了忘记一些细节,这里先对一些流程和要点进行记录。整体业务流程支付宝支付分很多种支付方式,例如wap、web、app、当面付(扫码和条码)等,细节上有区别,但是大的流程其实都差不多,尤其是各个支付方式的前期准备工作都差不多,整理后大致如下:创建支付宝账号并登陆;创建应用;添加相应支付功能并签约,需要营业执照;...

2019-02-12 11:47:16

回望18,展望19

虽然高铁也调皮的开始堵车,却依然没能阻挡要上班的我,年味已随着鞭炮声渐渐远去,我又开启了这新一年的工作。新的一年,是新的开始,趁着刚上班都还在努力克服节后综合征,还是先做一个总结和一个展望,权当做是磨刀不误砍柴工!回望我的2018转眼间,正式从事软件开发行业已经满了4年。一年四季,春夏秋冬,人生四时,生老病死。四年,似乎就是一个自然规律的轮回,不管是刻意还是无意,刚好就在这个点上,...

2019-02-11 18:29:53

vue+element-ui搭建纯前台项目记录

架构说明本次项目用于个人学习,作用于个人聚合支付demo,记录步骤,为以后作参考。前台项目搭建的架构基础是前后台分离,即:从代码层面来说,前台和后台互不相干,不同的服务,不同的端口,前后台之前使用http协议进行交互。前台基本技术架构为node.js+vue.js+element-ui+vue-router。步骤说明安装node.js本项目基于node.js搭建,需要使用npm命令,...

2019-01-29 12:21:00

个人聚合支付demo

需求在上一家公司和目前公司均参与支付项目的开发,但因为都是中途参与,因此一直对整体业务不是很熟,所以觉得有必要从头到尾自己开发一遍。各支付机构实际都封装有自己的sdk,可以集成之后进行很方便的开发,例如支付宝的sdk,可以让开发者把签名等很多过程都忽略掉。但是集成支付机构sdk的缺点也很明显,那就是每接一个机构就需要继承该机构的sdk,会导致jar包不断增多。同时,一旦支付机构的sdk进行...

2019-01-18 13:16:41

CSDN博客之星评选

收到csdn美女运营的qq消息,说是今年博客之星评选开始了,今年写的不多,原本是没想参加的。但既然这边特意发了消息,那还是要支持一下,还是拉下票吧,感谢csdn,感谢各位!投票地址:博客之星评选...

2019-01-03 10:57:47

mq消息队列(一):jms和amqp的区别(整合转载)

前言在过去的工作中,用过rabbitmq和activimq,并看到别人用过kafka和rocketmq。但是一直局限于简单的使用,相关的技术急需进一步提高。这几项技术虽然都是mq消息队列,但是却有不少的区别,而其中一个绕不开的话题就是他们支持的协议和规范,就我目前所知的来说,java 开发用的较多的可能就是jms规范和amqp协议。在进行对比学习的过程中,发现网上很多博客对比分析的很清晰,...

2018-09-20 10:32:53

springcloud微服务七:网关zuul

理解网关概念根据我个人的理解,对于一个系统来说,不管是微服务架构还是非微服务架构,如果单从功能实现来说,网关其实不是必要的。 但是,如果一个系统的业务涉及到了和外部网络的交互,多数情况下都会加入网关功能,最根源的目的就是提升系统的网络安全性。 因此网关可以理解为是在大的系统架构层面,一个网络策略方面的东西,最基本的需求就是实现请求的路由转发。 但是有的时候,可能网关是一种功能上的实现,而...

2018-09-15 20:24:01

springcloud微服务六:声明式服务调用Feign

在有了eureka服务注册中心、ribbon负载均衡及服务消费、hystrix断路器三部分之后,其实在某种程度上就应该能够创建一个基本的spring cloud微服务应用了,只不过这种应用无论是代码层面还是架构层面都还有一定的缺陷。 从代码层面来讲,ribbon和hystrix是一个标准化springcloud应用最基本的模块,通常也都是同时出现的,因此为了简化开发,有一个更高层次的工具来对他们...

2018-09-09 22:31:38

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 领英
    领英
    绑定领英第三方账户获取
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。