浅谈“决策引擎”在身份管理中的应用对于杀毒引擎来说,该引擎由其核心病毒库和识别组件组成。那么什么是身份引擎?01什么是决策引擎?决策引擎是指企业为客户提供个性化服务的决策平台。这些个性化服务决策通常包括:风险决策、精准营销决策等,但在身份领域,OneAuth是这一场景的先行者。决策引擎是对现实世界决策的高维抽象,包括三个对象,即:输入、决策引擎和输出。不同的场景对应不同的投入,同时应用不同的模型,导致不同的决策结果。其中输入输出很容易理解,那么可视化的引擎是什么?决策引擎可以理解为运行规则和模型的容器。可以根据场景的需要,随时改变需要的输入,改变规则和模型,不需要外部开发来适应新的场景。02什么是身份管理?让我们从IAM开始。IAM是IdentityandAccessManagement的缩写,即身份和访问管理,或身份管理和访问控制。IAM主要是为了实现一个目的:让合适的人或物,以合适的权限,访问合适的资源。其中,“人或物”称为主体(Subject),“资源”称为客体(Object)。传统IAM一般包括以下几个部分,常被称为“4A”或“5A”,但往往因为现实世界中的账户、权限、认证方式和访问对象是动态的,传统IAM不再适合多元化,多种场景的需求。IAM虽然可以完成身份管理最基本的管理功能,但是随着近几年云化应用,云原生企业越来越多,SaaS行业的发展逐渐繁荣,时代的发展,企业的业务习惯逐渐迁移到云端,或者说基于云端。云原生应用SaaS等很多产品在给人们带来极大便利的同时,也面临着身份管理的问题。企业业务分布在不同的云应用上,但员工身份信息管理、企业组织架构、权限分配是分离独立的。03什么是身份“引擎”面向未来的身份引擎OS——OneAuth?CloudEngine引擎和OS定位于给用户/开发者更多的选择和模块化的自由组合。OS抽象-身份管理解耦为了适用于各个APP的访问体验,OneAuth将身份抽象为四个核心结构,每个结构都指向一套或多套策略引擎——将用户访问过程分解为身份、授权、注册登记、发行是四个核心模块,底层策略引擎提供决策支持。客户可以创建动态的、基于上下文的用户旅程,并能够使用最少的自定义代码处理无限数量的身份用例。使用有关用户、设备、应用程序、网络和用户行为的上下文来告知任何用户的身份之旅,从而相应地定制访问体验。OneAuth身份引擎由一系列单独的步骤组成,这些步骤处理从注册到身份验证再到授权的整个用户流程。使用模块化组件定义任意进程CoreOS模块化构建使您能够评估策略、触发挂钩、发布事件、提示用户采取行动或直接访问外部服务。定制可以根据用例和应用程序的上下文而有所不同。可以通过配置跳过OneAuth引擎中的默认步骤。而且,对于任何应用程序或体验中的任何一点,您都可以通过选择不同的运行步骤和/或让用户选择跳过来创建与身份无关的访问流。使用策略引擎定义安全设置OneAuth的身份引擎是身份场景中决策引擎的一种实践。OneAuth身份引擎可以根据安全或业务需求自定义限制访问的条件,以用户、群组成员、设备、位置或时间作为访问控制条件。例如,根据不同应用的敏感度,设计不同的认证步骤。对于敏感应用或可疑身份,需要输入OTP或SMS一次性密码进行MFA认证才能访问应用;例如,您需要引入更多因素,或者在恢复帐户时,需要进行更多验证。OneAuth支持以下策略类型:OneAuth登录策略:用于控制谁可以登录,在什么情况下允许用户登录OneAuth,是否需要MFA验证,以及登录后允许保持登录状态的时间。AppLoginPolicy:确定在访问应用程序之前是否需要额外的身份验证。MFA策略:一种控制用户可以使用哪个MFA以及用户注册时设置哪些因素的方法。密码策略:根据不同的用户,给出不同的密码长度和复杂度,并给出密码的有效期。以及账户锁定和解锁的条件,包括允许用户进行自助账户恢复操作的情况。IDP路由策略:有多个IDP服务。当用户尝试登录时,路由策略会根据物理位置、终端、应用、用户等条件将用户路由到设置的IDP。OAuth授权策略:根据具体客户端、用户、请求授权范围的组合条件,给出规则定义的具体token,包括token生命周期的设置。使用挂钩的额外可扩展性使用内联挂钩和事件挂钩的能力使您能够支持无限的用例。挂钩为OneAuth身份引擎增加了额外的可扩展性,允许您添加自定义代码来修改正在运行的进程并通知外部服务。有两种类型的挂钩:内联挂钩-允许您向组件添加自定义逻辑事件挂钩-允许您根据OneAuth系统日志中发布的事件启动下游集成接下来的步骤是根据核心组件中的决策来驱动用户通过他们正在访问的流程。身份引擎充当调用外部API和开发的驱动引擎。当提供给开发者的API/组件服务不符合本驱动引擎的规范时,外部开发者会发现错误。这就需要开发者在安全设计上更加规范的考虑和设计,否则无法对接身份引擎,从底层提升安全和质量。另外,基于这样的设计,业务不需要过多考虑自身的安全考虑,让开发者更专注于自己的业务,让业务更加纯粹,增加其未来的可扩展性。这将帮助开发人员全面改进他们的工程实践。需要的不是IAM软件,而是标准的OneAuth?CloudEngine。它不是一个产品,而是一个基于引擎的OS(一套标准化的身份实践),降低维护成本,提高企业身份安全,提高生产力,完善身份建设。使用身份引擎来驱动更多的企业创造更大的愿景。重新定义身份、任何技术、任何方式、任何地点、任何事件和人之间的联系
