Tungsten Fabric架构解析丨TF基于应用程序的安全策略

2024-04-26 16:18

本文主要是介绍Tungsten Fabric架构解析丨TF基于应用程序的安全策略,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Hi!这里是Tungsten Fabric架构解析内容的最后一篇,介绍TF基于应用程序的安全策略。
Tungsten Fabric架构解析系列文章,由TF中文社区为你呈现,旨在帮助初入TF社区的朋友答疑解惑。我们将系统介绍TF有哪些特点、如何运作、如何收集/分析/部署、如何编排、如何连接到物理网络等话题。

在这里插入图片描述
常规防火墙策略包含基于单个IP地址或子网范围的规则。在任何规模的数据中心中,这都会导致防火墙规则的激增,这些规则在创建时难以管理,在故障排除时也难以理解。

这是因为服务器或VM的IP地址与应用程序、应用程序所有者、位置或任何其他属性无关。例如,考虑一个拥有两个数据中心并在开发和生产中部署三层应用程序的企业,如下图所示。
在这里插入图片描述
在该企业中,要求每层应用程序的每个实例只能与同一实例中的下一层实例通信。如图所示,这需要针对每个应用程序实例的单独的策略。 在解决问题时,管理员必须知道IP地址和应用程序实例之间的关系,并且每次部署新实例时,都必须编写新的防火墙规则。

应用标签

Tungsten Fabric控制器支持基于标签的安全策略,可应用于项目、网络、vRouters、VM和接口。

标签在对象模型中,传播到应用了标签的对象中包含的所有对象,并且在包含层次结构的较低级别应用的标签,优先于在较高级别应用的标签。标签具有名称和值。许多标签名称作为Tungsten Fabric发布版本的一部分。

下表显示了标签类型的典型用途:
在这里插入图片描述
如表中所示,除了Tungsten Fabric提供的标签类型之外,用户还可以根据需要创建自己的自定义标签名称,并且有一个_label _type标签,可用于更精细地调整数据流。

创建应用程序策略

应用程序策略包含基于标记值和服务组的规则,这些值是TCP或UDP端口号的集合。

首先,安全管理员为应用程序堆栈分配类型为_application _的标签,并为应用程序的每个软件组件分配类型为_tier _的标签。如下图所示。
在这里插入图片描述
在此示例中,应用程序被标记为FinancePortal _,层被标记为_web,app_和_db。Service组已为进入应用程序堆栈以及每一层之间的流量创建。

然后,安全管理员创建一个名为_Portal-3-Tier _containing规则的应用程序策略,该策略将仅允许所需的流量。

接下来,应用程序策略集与应用程序标记_FinancePortal关联,并包含应用程序策略_Portal-3-Tier。

此时,可以启动应用程序堆栈,并将标签应用于Tungsten Fabric控制器中的各个VM。这会导致控制器计算需要将哪些路由发送到每个vRouter以强制执行应用程序策略集,并将这些路由发送到每个vRouter。

如果每个软件组件都有一个实例,则每个vRouter中的路由表如下:
在这里插入图片描述
网络和虚拟机在这里被命名为它们所在的层。实际上,实体名称和层之间的关系通常不会那么简单。 从表中可以看出,路由仅启用应用策略中指定的流量,但此处基于标签的规则已转换为vRouter能够应用的基于网络地址的防火墙规则。

控制部署之间的流量

成功创建应用程序堆栈之后,让我们看一下创建堆栈的另一个部署时会发生什么,如下所示。
在这里插入图片描述
原始策略中没有任何内容阻止流量在一个部署中的层之间流动到另一个部署中的层。

可以通过以下方式来修改此行为:使用_deployment _tag标记每个堆栈的每个组件,并在应用程序策略中添加_match _condition来允许流量仅在部署标签匹配时才在层之间流动。

更新后的政策如下所示:
在这里插入图片描述
现在,流量符合严格的要求,即流量仅在同一堆栈内的组件之间流动。

更高级的应用程序策略

通过应用不同类型的标签,可以将安全策略应用于多个维度,所有这些都可以在单个策略中应用。

例如,在下图中,单个策略可以根据站点对单个堆栈内的流量进行分段,但允许在站点内共享数据库层。
在这里插入图片描述
如果在相同的站点和部署组合中部署了多个堆栈,则可以创建实例名称的自定义标签,并且可以使用实例标签上的匹配条件来创建所需的限制,如下图所示。
在这里插入图片描述
Tungsten Fabric中的应用程序策略功能提供了一个非常强大的实施框架,同时可以显着简化策略并减少其数量。

·END·
至此,Tungsten Fabric Carbide架构解析系列文章连载完毕,往期回顾——

第一篇:TF主要特点和用例
第二篇:TF怎么运作
第三篇:详解vRouter体系结构
第四篇:TF的服务链
第五篇:vRouter的部署选项
第六篇:TF如何收集、分析、部署?
第七篇:TF如何编排
第八篇:TF支持API一览
第九篇:TF如何连接到物理网络
在这里插入图片描述
关注微信:TF中文社区

在这里插入图片描述

这篇关于Tungsten Fabric架构解析丨TF基于应用程序的安全策略的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/938051

相关文章

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

一文解析C#中的StringSplitOptions枚举

《一文解析C#中的StringSplitOptions枚举》StringSplitOptions是C#中的一个枚举类型,用于控制string.Split()方法分割字符串时的行为,核心作用是处理分割后... 目录C#的StringSplitOptions枚举1.StringSplitOptions枚举的常用

Python函数作用域与闭包举例深度解析

《Python函数作用域与闭包举例深度解析》Python函数的作用域规则和闭包是编程中的关键概念,它们决定了变量的访问和生命周期,:本文主要介绍Python函数作用域与闭包的相关资料,文中通过代码... 目录1. 基础作用域访问示例1:访问全局变量示例2:访问外层函数变量2. 闭包基础示例3:简单闭包示例4

MyBatis延迟加载与多级缓存全解析

《MyBatis延迟加载与多级缓存全解析》文章介绍MyBatis的延迟加载与多级缓存机制,延迟加载按需加载关联数据提升性能,一级缓存会话级默认开启,二级缓存工厂级支持跨会话共享,增删改操作会清空对应缓... 目录MyBATis延迟加载策略一对多示例一对多示例MyBatis框架的缓存一级缓存二级缓存MyBat

前端缓存策略的自解方案全解析

《前端缓存策略的自解方案全解析》缓存从来都是前端的一个痛点,很多前端搞不清楚缓存到底是何物,:本文主要介绍前端缓存的自解方案,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、为什么“清缓存”成了技术圈的梗二、先给缓存“把个脉”:浏览器到底缓存了谁?三、设计思路:把“发版”做成“自愈”四、代码

Java集合之Iterator迭代器实现代码解析

《Java集合之Iterator迭代器实现代码解析》迭代器Iterator是Java集合框架中的一个核心接口,位于java.util包下,它定义了一种标准的元素访问机制,为各种集合类型提供了一种统一的... 目录一、什么是Iterator二、Iterator的核心方法三、基本使用示例四、Iterator的工

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

Java JDK Validation 注解解析与使用方法验证

《JavaJDKValidation注解解析与使用方法验证》JakartaValidation提供了一种声明式、标准化的方式来验证Java对象,与框架无关,可以方便地集成到各种Java应用中,... 目录核心概念1. 主要注解基本约束注解其他常用注解2. 核心接口使用方法1. 基本使用添加依赖 (Maven