与P2P系统的分散控制相反,存在许多分布式系统,其中分布式资源和服务之间的交互是使用各种协调机制编排的,这些机制提供了逻辑集中和协调的系统或服务的错觉。协调可以只是调度程序/资源管理器、离散协调器或协调组,并包括时间排序(因果关系)或跨分布式事务的不同优先级顺序。虽然离散地定义每种类型的分布式系统很诱人(即,与P2P中的分散控制不同),但庞大而多样化的分布式系统/服务组共享“协调”的共同抽象,尽管每个系统的实现和结果属性会有所不同。
首先,在分布式资源平台(或基础结构)上复制服务,以启用对用户的地理分散访问,同时在服务上保持所需类型的一致性规范。云和许多分布式客户端-服务器系统都属于这一类。
替代方法解决了分布式服务(相对于平台),其中分散的服务参与者进行交互以产生给定一致性要求的集体分布式服务。例如,事务数据库和分布式账本就属于这种强一致性的类别。网络爬虫、搜索或物流应用程序很可能在弱一致性规范下工作。
总体而言,它们构成了协调资源池模式下的两大类分布式系统,即资源协调和服务协调类,尽管它们的功能和定义经常重叠,但基于其特征协调模式。
在随后的小节中,为了将分布式系统安全性置于上下文中,我们首先详细介绍了基本的分布式概念以及基于它们的协调模式。接下来是概述每个资源和服务协调模型中的特征系统。这构成了与两类协调分布式系统相关的一般中断/漏洞集的基础。然后,我们概述了特定于每类系统的威胁和安全影响。我们向读者推荐的优秀文本,以全面而严谨地解决这些问题。
关于分布式平台底层技术的说明:引言强调,本KA的重点是分布式系统的安全性,而不是使用分布式来提供安全性。扩展这个主题,值得评论与分布式平台和服务的“设计和实现”相关的其他观点。这种面向设计的视角倾向于强调分布式系统、分布式服务及其构建的架构。这种观点通常侧重于(a)建立安全需求,(b)实现方法,说明如何在每个抽象级别满足给定的安全要求,以及(c)考虑分布式系统作为分层体系结构,其中每一层都建立在下层提供的原语和分布式服务之上。从这个角度来看,集中(协调)和分散模式经常以不同的方式组合在不同的层次上。同样从这个角度来看,必须通过补充和构建较低层和服务提供的内容来满足应用程序的安全要求。
这是一种构造和组合方法,其中应用程序级别或给定层的安全属性(要求)驱动解决方案和子系统的选择必须组装(例如,身份验证、授权、问责制、不可否认性等)。此类子系统/解决方案的组成通常是通过使用权衡(以及威胁)分析来实现的,这些分析往往涵盖部分而不是全部要求从而确定相对优势和劣势。例如,区块链应用程序,在第5.2节中进一步讨论,强调不可否认性和去中心化是其主要属性。
这种分层和组合的方法经常可以在文献中遇到,例如和许多其他文献。由于架构和实现从根本上奠定了在分布式系统中提供安全性的KA前提,因此鼓励读者参考本文献。下一节将重点重新介绍分布式系统概念,尤其是分布式系统协调类的基本概念。
分布式概念,协调类
如引言中所述,分布式系统是地理分散的com的整理,将集体交互的资源用于提供(a)连接分散数据生产者和消费者,(b)通过容错复制实现高可用性,以覆盖资源(计算和通信)故障,或(c)从分布式资源中提供集体聚合能力(计算或服务)(错觉)逻辑上集中/协调的资源或服务。
分布式系统通常是根据要交付给客户端的服务来构建的。每个服务都包含并在一个或多个服务器上执行,并导出客户端通过发出请求调用的操作。尽管使用单个集中式服务器似乎很诱人,但驻留在服务器上的最终服务只能与托管它的服务器一样具有容错能力。通常,为了适应服务器故障,服务器会以物理或逻辑方式进行复制,以确保在具有这种隔离的服务器故障之间具有一定程度的独立性。随后,副本管理协议用于协调这些服务器副本之间的客户端交互。当然,还需要考虑客户端故障或客户端入侵(包括它们在通过恶意代码或病毒发起攻击中的作用)的处理。我们现在概述了一组基本的分布式系统概念,这些概念也构成了其中安全考虑的基础。这些概念在非正式层面上提出以传达直觉,读者可以以获取有关这些主题的综合论文。