阿里云一直政企中台的倡导者,其提出的数据中台和业务中台有着广泛的实践。 那么身份认证作为中台上连接人和应用的底座, 是如何实践的呢?
阿里云的身份认证服务IDaaS致力成为大中台中的身份认证部分。在整个阿里云四大中台中,安全服务五横两纵, 其中的一纵“身份安全服务”,就是IDaaS 和RAM的组合。其中RAM主要是负责云上资源,比如ECS, RDS的管理,主要是针对运维账户; IDaaS 主要是负责云上应用, 比如VPN, 阿里邮箱等, 管理的是政企全量的用户。
如上图,应用身份服务IDaaS, 是真正的顶层标准解决方案和各行业定制解决方案的底座。 比如我们交付的数字*项目, 疫情期间推出的全面口罩预约服务, 就是基于IDaaS 提供的当地全体市民的身份。 所有的用户注册、登录及注销都是现成的能力, 就象支付宝的付款模块不需要从头写一样, 在这个预约服务中, 身份安全也是个即插即用的能力。
为了能够覆盖不同的应用场景, IDaaS包含了应用、账户、认证、授权及审计各个模块。除了常见的WEB应用打通SSO, 还有一个重要的能力就是STS。使用STS的主要原因, 是因为很多应用都已经API化, 会有一个前置的API网关来注册登记所有的API。 那么, 这个API访问的时候,网关需要校验OAuth 或OIDC中的一次性AT或id_token, 那么IDaaS 就要具备签发这种一次性Token 的能力。
上图中, 左边的WEB安全网关主要控制哪些用户 ,终端能够接入;右边的API网关主要控制能接入到哪些数据源中。 一个好的中台, 中间统一身份认证服务颁发的令牌, 必须是能够满足各种应用场景的。
下面通过一个例子来展示中台的威力。 比如一个业务应用需要定义权限服务, 过去是要自己从头开始写数据结构和代码。 现在, 只要在图形界面或是通过API定义好资源, 用户, 角色, 及俩俩的授权关系, 就很快可以开始代码了, 快的话只需要几分钟。 这个也是今年特别流行的Low-Code Application Platform (LCAP) 低代码开发平台的理念平台基础。
通过上述的权限中台服务, 可以快速的定义出RBAC的权限模型。 比如一个管理员角色可以分配管理哪些菜单,按钮这种。这个管理员, 还可以进一步把自己的权限下放到下一层的管理员, 分担管理功能, 形成分级管理。
同时, 权限中心还提供ABAC的能力, 比如, 所有的VIP能访问什么样的资源, 可以快速的定义出来。
通过上述的机制, 可以让业务开发人员更关注业务逻辑, 把认证,权限这些每个应用都有的安全基础能力交给中台服务, 从而能够快速的开发出进销管存,人法财行等业务应用, 让政企数字化转型过程更精彩。