理解SDP软件定义边界--概念、架构、流程

2023-10-25 07:30

本文主要是介绍理解SDP软件定义边界--概念、架构、流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目前,虚拟专用网络(VPN)是很多公司远程访问的解决方案之一。但是,VPN用户一旦获得授权就可以广泛访问公司网络上的资源。这种广泛访问的方法使潜在的敏感资源和信息暴露给VPN用户和攻击者。因此,围绕软件定义的边界解决方案(SDP)成为安全远程访问的一个更具吸引力的替代方案。

1. SDP简介

虚拟专用网 (VPN) 面世二十多年,为我们提供了加密的安全通信信道与数据传输渠道。虽然 VPN 类型很多,比如常见的 SSL VPN 和 IPSec,但无论实现方式如何,其基本理念都是一样的:创建安全 IP 传输隧道,以加密访问的方式保障数据安全。

构建并部署 VPN 的基本前提就是存在企业边界,表面上受到 IDS/IPS 和防火墙等边界安全设备保护。远程用户或商业合作伙伴可通过 VPN 隧道穿透企业网络边界,访问企业内部资源,即使不在企业内部也能享有本地访问权限。

然而,现代 IT 企业的现实是边界已不复存在,员工、承包商和合作伙伴遍布全世界,在本地、远程和云端完成作业。这就是促使 SDP 诞生的环境及其将要解决的问题。

软件定义边界 (SDP) 的概念相对较新,出现于 2013 年,最初受云安全联盟 (CSA) 指导。SDP 模型没有默认信任假设,不会因为采用了传输层安全 (TLS) 就认为加密隧道是安全的,所以很多供应商在与 SDP 相关的产品上采用了 “零信任” 这一术语。

2. SDP设计目标

  1. 对设备进行身份认证和验证
  2. 对用户进行身份验证和授权
  3. 确保双向加密通信
  4. 动态提供连接
  5. 控制用户与服务之间连接,同时隐藏这些连接

3. SDP架构

SDP的安全模型融合了设备身份验证、基于身份的访问和动态配置连接三大组件,虽然SDP中的安全组件都很常见,但这三者的集成却是相当创新的。

3.1 SDP组件

SDP架构
SDP架构主要包括三大组件:

  • SDP控制器(SDP Controler)
  • SDP连接发起主机(IH,Initial host)
  • SDP连接接受主机(AH,Accept host)

SDP主机可以发起连接也可以接受连接,IH和AH会直接连接到SDP控制器,通过控制器与安全控制信道的交互来管理。该结构使得控制层能够与数据层保持分离,以便实现完全可扩展的安全系统。

3.2 SDP工作流程

  1. 在 SDP 中添加并激活一个或多个【SDP 控制器】并连接到身份验证和授权服务,例如 AM、 PKI 服务、设备验证、地理位置、SAML、 OpenID、OAuth、LDAP、Kerberos、多因子身份验证、身份联盟和其他类似的服务。
  2. 在 SDP 中添加并激活一个或多个 AH。它们以安全的方式连接控制器并进行验证。 AH不响应来自任何其他主机的通信,也不会响应任何未许可的请求。
  3. 每个 IH 会在 SDP 中添加和激活,并与【SDP 控制器】连接并进行身份验证。
  4. IH 被验证之后,【SDP 控制器】确定 IH 被授 权可以连接的 AH 列表。
  5. 【SDP 控制器】指示 AH 接受来自 IH 的通信, 并启动加密通信所需的任何可选策略。
  6. 【SDP 控制器】为 IH 提供 AH 列表,以及加密通信所需的任何可选策略。
  7. IH 向每个授权的 AH 发起 SPA(SPA,单包授权,使未授权的用户和设备无法感知或访问)。然后 IH 和这 些 AH 创建双向加密连接(例如,双向验证 TLS 或 mTLS)。
  8. IH 通过 AH 并使用双向加密的数据信道与目标系统通信。

3.3 SPA单数据包授权技术

单数据包授权技术(SPA)是SDP框架中极为重要的一项技术。

SPA作用于SDP客户端与SDP网关之间,以实现强大的服务隐蔽性。有了SPA技术,才能够实现SDP中的资产隐藏功能。所谓的资产隐藏功能,就是未经过身份验证的SDP客户端无法“看见”敏感资产,既然看不见就更谈不上访问请求了。

SPA会根据内置算法生成一个单数据包,在经过加密分组等等一些手段发送到SDP网关之上,若是这个数据包通过了SDP网关的验证,这样才会同意与SDP客户端建立连接。除此之外SDP网关都直接将该数据包丢弃,让其他终端无法确认对方是否存在。

有了SPA,在SDP网络中,你无法“看到”除SDP控制器之外的任何其他资产(终端/端口等等)。

4. 商业解决方案

目前市场中有很多商业和开源解决方案提供SDP功能。

  • Vidder和CryptZone有推向市场的SDP解决方案。
  • 一些网络软件产品中也提供SDP中的关键元素,例如Cisco ACI(以及类似的开源项目),VMware NSX,Nuage VSP。
  • 谷歌已经发布了BeyondCorp来分享这些概念。
  • Cisco,HPE,Juniper提供的NAC解决方案也提供类似SDP的解决方案。

5. 参考

SDP(软件定义边界)让SDN更安全,你的对面可不能是一条狗!

这篇关于理解SDP软件定义边界--概念、架构、流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/gengzhikui1992/article/details/114577600
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/280988

相关文章

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

从原理到实战深入理解Java 断言assert

《从原理到实战深入理解Java断言assert》本文深入解析Java断言机制,涵盖语法、工作原理、启用方式及与异常的区别,推荐用于开发阶段的条件检查与状态验证,并强调生产环境应使用参数验证工具类替代... 目录深入理解 Java 断言(assert):从原理到实战引言:为什么需要断言?一、断言基础1.1 语

Spring Security中用户名和密码的验证完整流程

《SpringSecurity中用户名和密码的验证完整流程》本文给大家介绍SpringSecurity中用户名和密码的验证完整流程,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 首先创建了一个UsernamePasswordAuthenticationTChina编程oken对象,这是S

mysql中的服务器架构详解

《mysql中的服务器架构详解》:本文主要介绍mysql中的服务器架构,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、mysql服务器架构解释3、总结1、背景简单理解一下mysqphpl的服务器架构。2、mysjsql服务器架构解释mysql的架

Qt 设置软件版本信息的实现

《Qt设置软件版本信息的实现》本文介绍了Qt项目中设置版本信息的三种常用方法,包括.pro文件和version.rc配置、CMakeLists.txt与version.h.in结合,具有一定的参考... 目录在运行程序期间设置版本信息可以参考VS在 QT 中设置软件版本信息的几种方法方法一:通过 .pro

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

CSS Anchor Positioning重新定义锚点定位的时代来临(最新推荐)

《CSSAnchorPositioning重新定义锚点定位的时代来临(最新推荐)》CSSAnchorPositioning是一项仍在草案中的新特性,由Chrome125开始提供原生支持需... 目录 css Anchor Positioning:重新定义「锚定定位」的时代来了! 什么是 Anchor Pos