「Jenkins」使用Maven构建Java应用程序

1. 添加git凭据

若安装Jenkins时安装的推荐插件,git已经默认安装了,我们添加git凭据:

  1. 系统管理(Manage Jenkins) -> Manage Credentials -> 全局 -> 添加凭据
    • 类型选择SSH Username with private key,往下滑到Private Key,并勾选Enter directly,在Enter directly的key区域点击Add,粘贴本机git私钥,点击确定。
    • 类型选择Username with password,填写git用户名和密码,点击确定。

「Jenkins」声明式流水线Jenkins Pipeline

1. Jenkins Pipeline 基本概念

流水线是用户定义的一个CD流水线模型 。流水线的代码定义了整个的构建过程, 他通常包括构建, 测试和交付应用程序的阶段 。
Jenkins Pipeline(或简称为”Pipeline”)是一套插件,将持续交付的实现和实施集成到Jenkins中。
持续交付Pipeline自动化的表达了这样一种流程:将基于版本控制管理的软件持续的交付。
Jenkins Pipeline 的定义通常被写入到一个Jenkinsfile文本文件中,该文件可以被放入项目的源代码控制库中。

「安全认证」基于Shiro前后端分离的认证与授权(一.认证篇)

1. 开始之前

1.1 技术选型

选用SpringBoot+Shiro+JWT实现登录认证,结合Redis服务实现token的续签,前端选用Vue动态构造路由及更细粒度的操作权限控制。

  • 前后端分离项目中,我们一般采用的是无状态登录:服务端不保存任何客户端请求者信息,客户端需要自己携带着信息去访问服务端,并且携带的信息可以被服务端辨认。
  • Shiro默认的拦截跳转都是跳转url页面,拦截校验机制恰恰使用的session;而前后端分离后,后端并无权干涉页面跳转。
  • 因此前后端分离项目中使用Shiro就需要对其进行改造,我们可以在整合Shiro的基础上自定义登录校验,继续整合JWT(或者 oauth2.0 等),使其成为支持服务端无状态登录,即token登录。
  • Vue项目中,只需要根据登录用户的权限信息动态的加载路由列表就可以动态的构造出访问菜单。

「安全认证」Shiro安全框架入门

1. 初识 Shiro

Apache Shiro是一个强大易用的 Java 安全框架,提供了认证、授权、加密、会话管理、与 Web 集成、缓存等。

  • 具体来说,满足对如下元素的支持:

    • 用户,角色,权限(仅仅是操作权限,数据权限必须与业务需求紧密结合),资源(url)。
    • 用户分配角色,角色定义权限。
    • 访问授权时支持角色或者权限,并且支持多级的权限定义。