什么是OAuth2认证 简单说,OAuth 就是一种授权机制.数据的所有者告诉系统,同意授权第三方应用进入系统,获取这些数据.系统从而产生一个短期的进入令牌(token),用来代替密码,供第三方应用使用.而IdentityServer4就是一个开源的OAuth2认证系统.网关与IdentityServer4集成之后,我们可以避免为内部的每个微服务集成IdentityServer4,可以避免很多重复的工作,而这也是网关的一个重要优势. 新建IdentityServer4服务 1.新增WebApi,…
什么是限流 限流即限制并发量,限制某一段时间只有指定数量的请求进入后台服务器,遇到流量高峰期或者流量突增时,把流量速率限制在系统所能接受的合理范围之内,不至于让系统被高流量击垮.而Envoy可以通过envoy.filters.http.ratelimit插件实现限流. 限流服务 Envoy实现限流需要依赖限速服务,Envoy官方为我们提供了基于Redis和Memcached的限速服务 https://github.com/envoyproxy/ratelimit 我们将其从github下载到本地…
什么是Gateway 在微服务体系结构中,如果每个微服务通常都会公开一组精细终结点,这种情况可能会有以下问题 如果没有 API 网关模式,客户端应用将与内部微服务相耦合. 在客户端应用中,单个页面/屏幕可能需要多次调用多个服务. 如果没有网关,所有微服务必定会暴露在"外部世界"中. 每个公开发布的微服务都必须处理授权和 SSL 等问题. 而Gateway可以为微服务组提供单一入口点,API 网关位于客户端应用和微服务之间. 它充当反向代理,将请求从客户端路由到服务. 它还可以提供其他跨…
什么是控制平面 上一篇我们讲了文件系统的动态配置,这次我们来看看通过Control Panel来配置Envoy.控制平面就是一个提供Envoy配置信息的单独服务,我们可以通过这个服务来修改Envoy的配置.官方为我们提供了两种已经实现好的控制面板. go控制面板:https://github.com/envoyproxy/go-control-plane java控制面板:https://github.com/envoyproxy/java-control-plane 配置控制面板 我们下载官方…
什么是GRPC gRPC是一种与语言无关的高性能远程过程调用 (RPC) 框架.gRPC 的主要好处是: 现代.高性能.轻量级的 RPC 框架. 契约优先的 API 开发,默认使用协议缓冲区,与语言无关的实现. 可用于多种语言的工具来生成强类型服务器和客户端. 支持客户端.服务器和双向流调用. 通过 Protobuf 二进制序列化减少网络使用. 这些优势使 gRPC 非常适合: 效率至关重要的轻量级微服务. 需要多种语言进行开发的多语言系统. 需要处理流请求或响应的点对点实时服务. 什么是grp…
在上一讲中,我们已经完成了一个完整的案例,在这个案例中,我们可以通过Angular单页面应用(SPA)进行登录,然后通过后端的Ocelot API网关整合IdentityServer4完成身份认证.在本讲中,我们会讨论在当前这种架构的应用程序中,如何完成用户授权. 回顾 <Angular SPA基于Ocelot API网关与IdentityServer4的身份认证与授权(一)> <Angular SPA基于Ocelot API网关与IdentityServer4的身份认证与授权(二)&g…
今天来给我们的项目增加API网关,使用Ocelot. 它是系统暴露在外部的一个访问入口,这个有点像代理访问的家伙,就像一个公司的门卫承担着寻址.限制进入.安全检查.位置引导.等等功能.同时我们还要在网关中集成了Identity Server(Identity Server在项目中的使用见上一篇文章),当网关需要请求认证信息的时候会与Identity Server服务器进行交互来完成.多说也无益,直接上项目吧. 新建一个空的.netcore项目,命名为Zhengwei.Gateway新建好后引入O…
本文是接着上篇博客写的:Spring boot 入门(三):SpringBoot 集成结合 AdminLTE(Freemarker),利用 generate 自动生成代码,利用 DataTable 和 PageHelper 进行分页显示.按照前面的博客,已经可以搭建一个简单的 Spring Boot 系统,本篇博客继续对此系统进行改造,主要集成了 Shiro 权限认证框架,关于 Shiro 部分,在本人之前的博客(认证与Shiro安全框架)有介绍到,这里就不做累赘的介绍. 此系列的博客为实践部分…
Consul+Ocelot+Polly在.NetCore中使用(.NET5)-Consul服务注册,服务发现 Consul+Ocelot+Polly在.NetCore中使用(.NET5)-网关Ocelot+Consul Consul+Ocelot+Polly在.NetCore中使用(.NET5)-Ocelot+Polly缓存.限流.熔断.降级 微服务网关Ocelot加入IdentityServer4鉴权-.NetCore(.NET5)中使用 一.简介 描述:微服务网关中,需要对访问的接口进行身份…
好吧,这个题目我也想了很久,不知道如何用最简单的几个字来概括这篇文章,原本打算取名<Angular单页面应用基于Ocelot API网关与IdentityServer4+ASP.NET Identity实现身份认证与授权>,然而如你所见,这样的名字实在是太长了.所以,我不得不缩写"单页面应用"几个字,然后去掉ASP.NET Identity的描述,最后形成目前的标题. 不过,这也就意味着这篇文章会涵盖很多内容和技术,我会利用这些技术来走通一个完整的流程,这个流程也代表着在微…