第1章 课程导学
我们会对整个课程的内容做一个简要的介绍,包括章节的安排,使用的主要技术栈,实战案例的介绍以及前置知识的介绍等内容。
第2章 环境搭建
开发工具的介绍及安装,介绍项目代码结构并搭建,基本的依赖和参数设置。
第3章 API安全
我们从简单的API场景入手,讲述API安全相关的知识。首先我们会介绍要保证一个API安全都需要考虑哪些问题,然后我们针对这些问题介绍常见的安全机制,我们会针对每种问题和安全机制编写相应的代码,让大家对这些问题和安全机制有一个初步的认识。...
第4章 微服务网关安全
我们会从简单的API场景过渡到复杂的微服务场景,首先我们会介绍在微服务场景下,相比简单的API场景,我们会面临哪些新的挑战。后我们会介绍一个中小企业中常见的微服务架构,同时也会介绍OAuth2协议,我们会讲一下这个架构和OAuth2协议如何一起解决这些新的挑战。在这一章的后半部分,我们会在网关上做一些开发,演示如何在...
第5章 微服务身份认证和SSO
我们会学习微服务安全中比较重要的一个话题:身份认证,我会在微服务环境下实现一个前后端完全分离的单点登录(SSO)。在这个过程中,我们会进一步介绍OAuth2协议中的各种授权协议,以及如何使用这些协议达成我们的目标。最终我们会实现两个版本的SSO:基于服务器Session的实现和基于浏览器Cookie的实现。...
第6章 微服务之间的通讯安全
我们会聚焦于微服务之间的安全。我们会演示如何使用CA分发证书,保证微服务之间的通讯是安全的。我们也会讲解如何使用JWT来确保微服务之间的通讯安全。最后,我们会介绍一下阿里的开源框架Sentinel,以及如何使用Sentinel来实现集中式的微服务流控、熔断和降级管理,以确保微服务的可用性。...
第7章 微服务监控和报警
我们会介绍微服务的监控、追踪和报警。首先我们会介绍如何使用Promethus + Grafana + AlertManger来采集微服务的Metrics信息,并基于这些信息自动报警。其次我们会介绍如何使用 ElasticSearch + FileBeat + Kibana 来采集和查询微服务日志信息。最后我们会介绍一个调用链路追踪工具 pinpoint,用来监控微服务的t...
第8章 课程总结
这一章我们会回顾整门课中学到的知识,并对后面的进一步学习指出一些方向。