你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

支持安全性的体系结构设计模式

设计工作负荷体系结构时,应使用行业模式来解决常见挑战。 模式有助于在工作负载中进行有意权衡,并针对所需结果进行优化。 它们还可以帮助缓解源自特定问题的风险,这些问题可能会影响可靠性、性能、成本和作。 如果无人参与,这些风险可能表明缺乏安全保证,这可能会给企业带来重大风险。 这些模式由实际体验提供支持,专为云规模和运营模型而设计,本质上与供应商无关。 将已知模式用作标准化工作负荷设计的方法,是卓越运营的一部分。

许多设计模式直接支持一个或多个体系结构支柱。 支持安全支柱的设计模式优先考虑分段和隔离、强授权、统一应用程序安全性和新式协议等概念。

下表总结了支持安全性目标的体系结构设计模式。

图案 概要
大使 通过卸载与网络通信相关的交叉任务来封装和管理网络通信。 生成的帮助程序服务代表客户端启动通信。 此中介点提供了增强网络通信安全性的机会。
前端的后端 通过创建特定于特定前端接口的单独服务来个性化工作负荷的服务层。 由于这种分离,支持一个客户端的服务层中的安全性和授权可以针对该客户端提供的功能进行定制,从而可能会减少 API 的外围应用,以及可能公开不同功能的不同后端之间的横向移动。
舱 壁 引入组件之间的有意和完整的分段,以隔离故障的爆炸半径。 还可以使用此策略将安全事件包含到已泄露的舱位。
声明检查 将数据与消息流分开,提供一种方法来单独检索与消息相关的数据。 此模式支持将敏感数据保留在消息正文中,而是将其保存在受保护的数据存储中。 通过此配置,可以建立更严格的授权,以支持从预期使用数据的服务访问敏感数据,但从队列监视解决方案等辅助服务中删除可见性。
联合标识 将信任委托给工作负荷外部的标识提供者,以管理用户并为应用程序提供身份验证。 通过外部化用户管理和身份验证,可以获取基于标识的威胁检测和预防的不断发展功能,而无需在工作负载中实现这些功能。 外部标识提供者使用新式互作身份验证协议。
把关 在将请求转发到后端节点之前和之后,卸载专门为安全和访问控制强制实施的请求处理。 将网关添加到请求流中可以集中安全功能,例如 Web 应用程序防火墙、DDoS 保护、机器人检测、请求作、身份验证启动和授权检查。
网关聚合 通过在单个请求中聚合对多个后端服务的调用,简化了客户端与工作负荷的交互。 此拓扑通常会减少客户端与系统一起具有的触摸点数,从而减少公共外围应用和身份验证点。 聚合后端可以保持与客户端完全隔离的网络。
网关卸载 将请求转发到后端节点之前和之后,将请求处理卸载到网关设备。 将网关添加到请求流后,便可以集中使用客户端的 Web 应用程序防火墙和 TLS 连接等安全功能。 平台提供的任何卸载功能都已提供增强的安全性。
发布服务器/订阅服务器 通过将直接客户端到服务通信替换为通过中间消息代理或事件总线的通信来分离体系结构中的组件。 此替换引入了重要的安全分段边界,使队列订阅者能够与发布服务器隔离网络。
检疫 在授权在工作负荷中使用外部资产之前,确保外部资产满足团队同意的质量级别。 此检查用作外部项目的第一个安全验证。 在安全开发生命周期(SDL)中使用项目之前,在分段环境中对项目进行验证。
Sidecar 通过将非主任务或交叉任务封装在与主应用程序一起存在的配套进程中来扩展应用程序的功能。 通过封装这些任务并将其部署进程外,可以将敏感进程的外围应用减少为仅完成任务所需的代码。 还可以使用 sidecars 将交叉安全控件添加到非本机设计具有该功能的应用程序组件。
限制 对对资源或组件的传入请求的速率或吞吐量施加限制。 可以设计限制以帮助防止资源耗尽,这可能会导致系统自动滥用。
附属密钥 授予对资源的安全限制访问权限,而无需使用中间资源来代理访问。 此模式使客户端可以直接访问资源,而无需长期或长期凭据。 所有访问请求都以可审核事务开头。 然后,授予的访问权限在范围和持续时间内受到限制。 通过此模式,可以更轻松地撤消授予的访问权限。

后续步骤

查看支持其他 Azure Well-Architected 框架支柱的体系结构设计模式: