云原生架构下的数字身份治理实践技术分享

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 在云上自动化发布实践方面,采用云下开发测试,云上验收发布模式进行产品迭代的方式。产品发布过程中全面拥抱DevOps,并融入零信任安全理念建立DevSecOps开发模式。利用自研的独立pki服务,可以控制每一个用户的后台访问权限时间。而且在整个身份安全保护开发运维的过程中,以及各种工具的使用上,派拉将安全一直贯穿整个研发体系。

本篇文章将为大家带来云原生架构下的身份管理平台,为企业、机构、开发者构建云安全数字身份入口,赋能用户全场景下的数字身份治理与链接服务的技术分享。

从自动化发布、云上运维和安全,解析上云架构实践

image.png

上图为身份管理平台的架构图,平台在架构方面大规模使用华为云云原生组件,以及网络、安全、k8s平台、中间件等产品。通过实践应用云原生产品,企业仅需关注业务即可,无需关注产品本身。为加速产品迭代,平台底层由华为云提供专业的服务,如容器镜像服务、云数据库MySQL、分布式缓存服务等。

在开发过程中,派拉采用基于Spring Cloud的微服务体系进行架构,用户的访问首先会经过华为云组件保障流量的安全和负载均衡,并经过K8s的Ingress组件后进入到服务空间,在微服务网关Spring Cloud Gateway组件对接用户的访问进行验证并分发到具体的业务微服务中。微服务网关作为唯一对外暴露的服务,也是唯一一个有Session状态的服务,其他都为无状态服务。对于微服务的治理全面采用Spring Cloud体系进行统一管理,包括Nacos作为微服务注册中心和配置中心,Spring Boot Admin对微服务进行监控,Hystrix做降级和熔断及故障隔离,XXL-Job作为分布式任务管理,还有自研的ParaPKI服务管理证书和密钥。

image.png

在云上自动化发布实践方面,采用云下开发测试,云上验收发布模式进行产品迭代的方式。产品发布过程中全面拥抱DevOps,并融入零信任安全理念建立DevSecOps开发模式。利用自研的独立pki服务,可以控制每一个用户的后台访问权限时间。而且在整个身份安全保护开发运维的过程中,以及各种工具的使用上,派拉将安全一直贯穿整个研发体系。

云下产品开发和测试环境运行IDC机房中,利用零信任产品,开发和测试人员从办公网或家庭网能安全的接入开发测试环境,所有的代码提交都通过流水线自动化编译打包上传到Nexus和Harbor中,再通过自动化发布能力在开发和测试环境中K8s上进行版本发布,通过测试后的产品版本根据流程触发提交镜像到华为云容器管理组件。保证从代码提交后打包的制品在各个环境下的一致性,减少质量问题逃逸。另外对于K8s、微服务、中间件的管理平台的认证和操作的安全性是一个很大的挑战,我们通过Nginx从网络上隔离运维和开发人员直接访问管理平台,所有人必须通过mTLS才能连接管理平台,并通过ParaPKI为运维开发人员分配合适权限的个人证书,从身份、权限、时效性来保护管理平台的操作。

image.png

由于网络边界的消失,对于传统从内网网络边界的安全访问模型,已经无法适应云原生时代,在云上运维架构和安全实践中,派拉基于零信任理念,通过先认证后链接的方式,保障端到服务、端到端、服务到服务的全链路网络安全。实现全面启用mTLS,凡是网络传输的数据一律加密,通过零信任网关代理所有对外服务,基于沙箱技术保护客户端自身安全,最终完成整合全链路网络、数据、身份及权限的安全一体化方案。最终保证从开发阶段代码安全、前后端调试安全、到产品运维安全,最后到产品发布服务内部调用方面的一个全面防护。

在实践应审尽审理念方面,派拉通过日志组件审计所有通过网关的用户访问数据,并存储到ES中,结合大数据和AI的能力对用户的所有访问行为进行分析,结合用户的权限策略来持续的控制用户行为风险,及时发现风险并启用二次强认证来缓解风险。另外,派拉开发了独立的日志审计服务,完全自定义化的配置客户实际需要的日志查询和报表分析的业务。

上云业务实践的4个关键点

image.png

多租户能力是SaaS服务的基础能力,通过多租户用一套资源为多个客户提供云上服务,进而发挥资源的重复利用产生效率。派拉从域名开始进行租户隔离,租户访问进入服务开始对Redis、elastic、MySQL、对象存储全域的多租户隔离,最大程度保证由租户产生的数据所有权归于租户。未来,派拉与华为云将一起去推动多租户开源组件在开源社区上的贡献。

接下来,准备进行更细粒度的多租户隔离能力,根据租户体量和优先级来决定租户对于资源占用量的隔离,从网络带宽、容器计算资源到数据库存储等中间件的优先响应,都可以基于租户的优先级进行隔离和分配,不仅如此还可以对关键租户提高更加高的体验。

image.png

作为一款SaaS化的身份管理产品,充分使用了缓存、队列、事件机制保障强大的高可用高并发能力,管理所有租户的用户数据,是所有用户的第一入口。

在大量的用户注册请求进入服务后,通过MQ队列机制进行排队消费,达到削峰的效果。用户注册完成后同样通过队列机制调用消息通知服务来降低通用业务服务的压力,保障各个微服务的业务处理能力。

用户注册完成入库后通过Maxwell组件监听数据库的binlog文件,对新创建的用户推送到Redis缓存和ES中,从而为更加高并发要求登录业务提供保障。

image.png

在安全架构方面,利用原子化微服务架构进行设计,通过基于身份和公钥技术设计的工作负载安全保障能力,并结合微服务的边车模式,在不干扰业务代码的情况下把安全能力通过Java agent技术加载到容器服务中,即使单个服务由于未知漏洞被黑客攻破后,也无法横向移动到其他并行运行的服务,最终控制威胁最小化。

用户的访问首先会经过Gateway对用户的身份和权限进行校验,合法的用户会被颁发一个身份Token,这个Token会附加到Http Header中透传到后续的服务中,每个服务接受到上一个服务的请求时,必须经过两层认证访问,第一基于mTLS技术对请求主体的设备或服务的身份合法性校验,第二从http请求头中的Token来对访问者的身份和权限校验;并持续在调用链路中的每个服务中都会进行校验,保障了全链路的身份和数据安全。

image.png

统一单点登录,用户只需登录一次即可访问多个业务系统无需重复登录,虽然看似简单的功能其内部逻辑极其复杂,从如何安全验证用户凭据,保障用户身份不被冒用,到用户在多个系统游走过程中,如何把合法身份和权限信息在多个业务系统中安全传递。

结合产品可支持的多种认证方式和多种认证协议,以身份管理系统为IDP为各个业务系统集成完成单点授权和认证,也支持身份管理系统为SP通过认证代理到其他第三方的身份认证中心IDP去认证,实现多认证中互信能力。

当用户登录平台时,平台会记录用户的登录信息,根据用户行为进行持续风险识别,结合不同的认证方式在不同场景或风险级别调用不同强度的认证能力。

image.png

统一的身份治理更加的复杂,不仅涉及到各种身份同步和权限治理的技术,还需要与客户各种业务系统中的实际业务相结合,制定身份和权限治理的指导原则。最终才能做到在用户只登录一次后,完全无障碍的在各个业务系统中安全可靠的处理其业务。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
11小时前
|
Kubernetes Cloud Native 微服务
企业级容器部署实战:基于ACK与ALB灵活构建云原生应用架构
这篇内容概述了云原生架构的优势,特别是通过阿里云容器服务Kubernetes版(ACK)和应用负载均衡器(ALB)实现的解决方案。它强调了ACK相对于自建Kubernetes的便利性,包括优化的云服务集成、自动化管理和更强的生态系统支持。文章提供了部署云原生应用的步骤,包括一键部署和手动部署的流程,并指出手动部署更适合有技术背景的用户。作者建议在预算允许的情况下使用ACK,因为它能提供高效、便捷的管理体验。同时,文章也提出了对文档改进的建议,如添加更多技术细节和解释,以帮助用户更好地理解和实施解决方案。最后,展望了ACK未来在智能化、安全性与边缘计算等方面的潜在发展。水文一篇,太忙了,见谅!
|
1天前
|
消息中间件 API 数据库
构建微服务架构的后端实践
【7月更文挑战第7天】本文将深入探讨微服务架构在后端开发中的应用,从微服务的理论基础出发,逐步引导读者了解如何在实际项目中设计、部署和维护一套高效的微服务系统。我们将通过一个虚构的电商平台案例,展示微服务架构的搭建过程,包括服务拆分、数据库设计、通信机制选择、容错与服务治理等关键步骤,旨在为后端开发者提供一份实战指南。
12 4
|
4天前
|
中间件 BI 测试技术
【实践篇】领域驱动设计:DDD工程参考架构
领域驱动设计(DDD)参考架构旨在为团队提供DDD实践的起点,强调业务与技术的分离,考虑多种架构风格如分层、六边形等。它包括多限界上下文结构,每个上下文内有应用层(不含领域逻辑)、领域层(含领域模型和事件)和网关层。接入层负责外部请求的处理,业务层协调不同上下文。组件包括Start(启动)、Common(通用)、API、Facade、Application Service、External API、Query、Domain和Gateway,各组件有明确的职责和依赖关系,如Gateway处理技术细节并作为系统与外部的接口。架构设计是多因素权衡,适应实际工程需求。
|
4天前
|
Kubernetes Cloud Native 安全
云原生架构:推动数字化转型的关键技术
本文旨在深入探讨云原生架构如何成为推动企业数字化转型的重要技术。通过分析云原生的核心原则、实践案例和面临的挑战,揭示其在现代IT战略中的核心地位。文章将基于最新的行业报告和科学研究,提供数据支持的分析,并结合逻辑推理,为读者呈现一个全面而深刻的云原生技术视角。
13 0
|
4天前
|
Cloud Native Java 微服务
使用Java构建可伸缩的云原生应用架构
使用Java构建可伸缩的云原生应用架构
|
5天前
|
存储 关系型数据库 分布式数据库
PolarDB,阿里云的云原生分布式数据库,以其存储计算分离架构为核心,解决传统数据库的扩展性问题
【7月更文挑战第3天】PolarDB,阿里云的云原生分布式数据库,以其存储计算分离架构为核心,解决传统数据库的扩展性问题。此架构让存储层专注数据可靠性,计算层专注处理SQL,提升性能并降低运维复杂度。通过RDMA加速通信,多副本确保高可用性。资源可独立扩展,便于成本控制。动态添加计算节点以应对流量高峰,展示了其灵活性。PolarDB的开源促进了数据库技术的持续创新和发展。
22 2
|
5天前
|
消息中间件 监控 Cloud Native
阿里云云原生生态强调事件驱动架构(EDA),借助EventBridge和EventMesh实现微服务间的高效协作。
【7月更文挑战第3天】阿里云云原生生态强调事件驱动架构(EDA),借助EventBridge和EventMesh实现微服务间的高效协作。EDA提升系统弹性和可维护性,促进业务敏捷性。实施路径包括事件模型设计、集成阿里云服务、开发事件处理器和监控优化。通过阿里云服务,开发者能轻松构建响应式、可扩展的云原生应用,加速创新并驱动数字化转型。
12 0
|
5天前
|
运维 监控 Devops
深入理解微服务架构:从理论到实践
随着数字化转型的加速,微服务架构已成为现代软件开发的重要趋势。本文将通过数据导向和科学严谨的分析方法,探讨微服务架构的核心概念、优势与挑战,并结合逻辑严密的案例研究,揭示如何在实际项目中有效实施微服务。我们将引用权威研究和统计数据,深入解读微服务对企业技术栈的影响,同时提供一套完整的微服务实施策略,旨在帮助读者构建更加灵活、可维护的软件系统。
|
5天前
|
设计模式 安全 持续交付
探索微服务架构下的后端开发实践
在现代软件开发领域,微服务架构已成为一种流行的设计模式,它通过将应用程序分解为一组小的服务来促进敏捷开发和可扩展性。本文深入探讨了微服务架构的核心概念、技术选型、数据一致性挑战以及安全性考虑,旨在为后端开发人员提供一份全面的微服务开发指南。文章结合最新的研究成果和业界最佳实践,分析了微服务架构的优势和面临的挑战,并提出了相应的解决方案。读者将了解到如何在实际项目中应用微服务原则,以及如何克服实施过程中的技术和组织障碍。
|
6天前
|
Kubernetes 负载均衡 Cloud Native
云原生架构下的微服务治理之道
随着云计算技术的不断演进,云原生架构已成为现代软件开发的重要趋势。本文旨在探讨在云原生环境中微服务治理的关键策略和最佳实践。通过分析微服务架构的复杂性及其对治理机制的需求,文章将深入讨论如何利用云原生工具和技术实现高效的服务发现、配置管理、流量控制以及安全策略。我们将展示数据支持的分析结果,以证明采用这些治理措施能够显著提高系统的稳定性、可扩展性和安全性。此外,文章还将引用相关领域的科学研究和权威统计数据,以确保内容的科学性和严谨性。

热门文章

最新文章