路由访问映射规则|学习笔记

简介: 快速学习路由访问映射规则

开发者学堂课程【微服务框架 Spring Cloud 快速入门路由访问映射规则】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/614/detail/9369


路由访问映射规则

 

路由访问映射规则是什么意思呢?

就好比我们之前的滴滴打车的举例,其中有一个虚拟号码来访,我们就看不到它真实的号码来访,而只能看到他的虚拟号码。明白这一思想,我们就来对刚才的访问地址做一个映射规则。

比如此时我们对外暴露出了真实的微服务名称为

microservicecloud-dept 但此时如果我并不想暴露它,这个时候我们就要做一个安全加固,就好比是虚拟拨号一样。

http://myzuul.com:9527/microservicecloud-dept/dept/get/2

1.工程 microservicecloud-zuul-gateway-9527

2.代理名称

YML

首先我们找到我们的工程直接在9527上面修改,加了中间绿色部分的路由网关之后,之前蓝色部分的真实地址,就会被虚拟的所取代。表示之前真实的地址 mydept.serviceId:xxx,可以用虚拟的mydept.path:xx来替代。

before

http://myzuul.com:9527/microservicecloud-dept/dept/get/2

zuul:

routes :

mydept.serviceId: microservicecloud-dept

mydept.path: /mydept/**

after

http://myzuul.com:9527/mydept/dept/get/1

直接将其加到15行之中然后保存运行。

在网页之中查看效果,可以看到我们用 mydept 做了真实微服务名的映射能够成功访问,就好比是滴滴打车的虚拟软件拨号。

但是虽然新功能加上去了但是使用原来真实的微服务名称仍然可以访问。而我们要保证安全性最好是单入口单出口。所以我们应该要让真实的名字隐藏而假的名字暴露,简称“隐真示伪”。

路由访问OK

http://myzuul.com:9527/mydept/dept/get/1

原路径访问OK

http://myzuul.com:9527/microservicecloud-dept/dept/get/

两个路径都可以访问违背了单入口单出口的原则,所以我们要将原真实服务名忽略

在 yml 中添加以下红色部分代码。耐心等待运行。

其中绿色部分做的是id和路径的映射,红色部分表示不能再使用这个真实路径访问。同时添加代码的时候要注意格式对齐。

server:   //安装口为9527

port: 9527

spring:

application:

name: microservicecloud-zuul-gateway//微服务器的名字

eureka:

client:

service-url:   //Eureka集群defaultZone:http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka,http://eureka7003.com:7003/eureka

instance:

instance-id: gateway-9527.com

prefer-ip-address: true

zuul:

ignored-services: microservicecloud-dept

routes:

mydept.serviceId: microservicecloud-dept

mydept.path: /mydept/**

info://这一部分可写可不写

app. name: atguigu-microcloudcompany.

name: toervi.atguigu.com

build.artifactId: $project.artifactId$

build.version: $project.version$

我们将原路径的地址

http://myzuul.com:9527/microservicecloud-dept/dept/get/2改为

http://myzuul.com:9527/microservicecloud-dept/dept/get/3可以看到显示已经被封住了,无法访问

而将虚拟的地址

http://myzuul.com:9527/mydept/dept/get/1改为

http://myzuul.com:9527/mydept/dept/get/2仍然可以显示出来,这就表明我们完成率把原真实服务名成功忽略。

单个具体,多个可以用”*”

假设现在我们要忽略许多真实的微服务器名称,就应该使用*,将红色处的代码改为下方形式,就可以实现忽略多个真实的微服务器名称

zuul:

ignored-services:routes:”*”

mydept.serviceId: microservicecloud-dept

mydept.path: /mydept/** 

设置统一公共前缀

假设我们现在在北京,我们有两所据点,一个北京一个深圳,为了对外暴露我们可以在前面统一加一个公共前缀,比方说:尚硅谷北京分校,尚硅谷深圳分校。两者前都加了一个统一的前缀叫尚硅谷。同样针对我们的域名管理和安全加固也支持这样的一种模式

要实现以上,首先在 YML 的代码中加上红色部分代码,然后运行。

zuul:

prefix: /atguigu //prefix表示前缀

ignored-services : "*"

routes:

mydept.serviceId: microservicecloud-dept

mydept.path: /mydept/** 

运行之后我们会发现,即便是使用虚拟的网址也无法访问了,是因为没有加上前缀 atguigu。

加上之后就可以显示了

YML

server:

port: 9527

spring:

application:

name: microservicecloud-zuul-gateway

zuul:

prefix: /atguiguignored-services : "*"

routes:

mydept.serviceId: microservicecloud-dept

mydept.path: /mydept/**

eureka:

client:

相关文章
|
8月前
|
安全 API
路由的作用
路由的作用
36 1
|
8月前
【每日一记】ACL基本概念(匹配流量、路由条目、书写、规则.....)
【每日一记】ACL基本概念(匹配流量、路由条目、书写、规则.....)
214 1
|
网络协议 应用服务中间件 网络安全
限定源端口访问目标
限定源端口访问目标 1.1. 起因 在渗透测试时,客户需要对我们的测试IP进行加白,但是此次客户要求精确到固定端口或者小范围端口(不能1-65535),根据以前的经验,默认是加白IP和全端口,因为代理建立连接使用的端口是随机的,所以这次算是从头查找资料总结一下各种指定源端口的方式。 这里的端口是指与目标建立连接时使用的源端口,而不是代理监听的端口。 1.2. 注意 最
6548 1
|
网络协议 网络虚拟化 网络架构
路由与交换系列高级IP ACL特性与配置实验
• 掌握高级 IP ACL的原理 • 掌握ACL在企业网络中的应用 • 掌握高级IP ACL的配置方式 • 掌握高级IP ACL的验证效果
298 1
|
网络协议 网络虚拟化 网络架构
路由与交换系列高级IP ACL特性与配置实验二
• 掌握高级 IP ACL的原理 • 掌握ACL在企业网络中的应用 • 掌握高级IP ACL的配置方式 • 掌握高级IP ACL的验证效果
199 1
|
监控 开发者
创建规则|学习笔记
快速学习创建规则
121 0
创建规则|学习笔记
|
弹性计算 网络安全 网络架构
添加自定义路由|学习笔记
快速学习添加自定义路由
283 0
添加自定义路由|学习笔记
|
安全 物联网 网络虚拟化
路由与交换系列之基本IP ACL特性与配置
• 掌握基本IP ACL的原理 • 掌握ACL在企业网络中的应用 • 掌握基本IP ACL的配置方式 • 掌握基本IP ACL的验证效果
4218 8
  路由与交换系列之基本IP ACL特性与配置
|
网络协议 网络架构
路由与交换系列之简单的路由策略与默认路由汇总路由的运用
路由策略使用不同的匹配条件和匹配模式选择路由和改变路由属性。在特定的场景 中,路由策略的6种过滤器也能单独使用,实现路由过滤。
3656 1
路由与交换系列之简单的路由策略与默认路由汇总路由的运用
|
网络协议 网络架构
IP路由基础、路由器静态路由配置方法、自治系统、缺省路由的配置方法、路由选路规则、缺省路由、备份路由、等价路由、三种查询路由表命令
路由器特点,网络IP地址规划网络间的特性,基本路由思想,编辑静态路由部分,查询设备整个路由表,查看特定的路由协议时使用,查询目的地址2.2.2.2的路由条目,IP路由表代码写法,IP路由表里的信息,路由表来源,路由表的信息,路由表选路规则,缺点:缺省路由,备份路由,等价路由,做实验的步骤......
IP路由基础、路由器静态路由配置方法、自治系统、缺省路由的配置方法、路由选路规则、缺省路由、备份路由、等价路由、三种查询路由表命令