IDM统一认证自动续期功能验证

标签: #无关联标签#
作者: 管理员  

2023-09-12 10:18 阅读量(186)

IDM身份管理平台是满足于企业身份管理、统一认证的安全管控平台,它基于5A管控体系(认证Authentication、授权Authorization、账号Account、审计Audit、应用Application)实现企业的统一认证和管理,主要为企业构建统一的登录入口和认证体系。在5A体系中,统一账号和统一认证是最常用的内容,其中统一账号是基础,用来保证登录账号一致;统一认证是应用,用来实现单点登录、统一访问。

IDM作为统一认证入口,为了满足不同系统的对接需要,预置有CAS、OAuth、接口等几种认证方式,基本上能满足绝大多数系统认证集成的需求,而为了满足统一认证的效果和场景,IDM平台扩展了登录自动续期的机制,结合实际业务对自动续期功能进行了测试验证。

总体说明

IDM身份管理平台以5A管控为核心,搭建统一的安全管控平台,以实现内部系统的统一管控等需求,其中又以统一用户、统一认证和统一授权为主要集成点

1.整体架构

IDM平台的整体架构以5A(统一用户、统一认证、统一授权、统一审计、应用管控)为基础,结合用户管理、认证管理、BPM工作流等机制实现IDM平台与上下游系统的打通。

IDM的用户数据一般来源于权威的账号数据库,如人力资源或OA系统,通过数据集成将用户以及部门、岗位等数据同步到IDM,IDM统一管理用户并制定相应的安全策略,再将相关数据分发到下游系统,实现上下游系统的统一整合。

2.应用场景

IDM的集成点主要在于统一用户、统一认证、统一授权三个层面:

1.统一用户:以HR、OA等系统为源头,将用户数据同步到IDM平台,或者在IDM中手动新增账号,通过IDM实现账号的统一管理维护,再将账号分发下游系统;

2.统一认证:IDM提供CAS认证、OAuth认证、接口认证等多种认证标准,可以满足绝大多数认证场景需要,业务系统通过和IDM平台实现统一认证,从而实现单点登录,只需要登录一次就能访问不同的业务系统;

3.统一授权:以IDM为源头,对角色、权限进行统一管理,并通过数据接口的方式将角色、权限以及关联关系等下发到不同的系统中,从而实现业务系统功能权限、数据权限、接口权限的统一管理。

3.认证在线

IDM统一认证支持CAS、OAuth、接口认证三种认证方式,对外提供三种标准供外部系统进行认证集成,但为了保证统一认证的一致性,在IDM产品内部对三种认证规划了统一的登录处理模式,无论采用哪种认证,在账号IDM登录后,都可以采用统一的在线模式,IDM支持三种在线模式:普通认证、自动续期、唯一在线。

1.普通认证:即固定有效期的认证方式,账号通过IDM完成统一认证后,在IDM的缓存中会记录账号信息和时间,在缓存数据超过有效期时,会自动清理缓存,账号就需要重新进行登录操作;

2.自动续期:账号通过IDM登录后,会在缓存中记录账号的登录时间,在一定时限内,只要账号通过IDM平台进行过认证校验操作,缓存中的账号登录时间就会更新,只要登录没有超过设置的时间上限,缓存中的信息就不会被清理,账号可以实现自动登录;

3.唯一在线:同一个账号只能在一个位置登录,如果同一账号在多处登录,只会保留最新的登录信息,其他信息会被自动清理,账号下线,再次访问时就需要重新登录。

认证机制

IDM的认证主要是基于Redis中存储的账号信息,其中普通认证、自动续期和唯一在线都需要通过Redis获取账号信息,再基于用户以及登录信息进行判断,确认账号状态。

1.普通认证

普通的统一认证机制,是通过CAS的配置文件定义认证信息的有效期,当认证到期后,Redis会自动对缓存中的认证信息进行删除,再次访问时就需要重新登录。

2.自动续期

基于基础的统一认证机制,在开启自动续期机制后,每次在通过IDM认证时,IDM后台会从缓存中获取上次登录时间,根据登录时间判断时间间隔是否超出间隔上限,如果能获取账号信息并且没超过时间上限,登录成功,自动刷新账号的登录时间,如果获取不到账号信息,则重新登录。

3.唯一在线

基于基础的统一认证机制,在开启唯一在线后,每次在通过IDM认证时,会获取当前登录的浏览器标识,同时从缓存中获取上次登录信息,如果判断两次的登录标识不同,则重新登录,并在登录成功后删除缓存中已有的认证信息,从而保证一个账号只有一个认证标识

配置过程

IDM平台默认的认证方式是普通认证,如果需要开启自动续期或者唯一在线,需要调整cas.properties文件,将对应的认证方式打开,从而实现不同的认证机制,但是三者之间互斥,只能采用一种认证策略。

1.普通认证

IDM平台默认的认证方式为普通认证,如果采用普通认证,只需要在cas.properties关闭其他两种方式。将renewTicketGrantingTicket和
keepLastTicketGrantingTicket均改为false即可。

普通认证的登录有效期受tgt.timeToKillInSeconds参数影响,默认7200s,即登录有效期2小时,2小时无操作后自动登出,需要重新进行登录。

2.自动续期

将cas.properties中的renewTicketGrantingTicket配置改为true,同时注意keepLastTicketGrantingTicket需要设置为false,二者不能同时为true。

自动续期的时间上限受rememberMeDuration和
tgt.maxTimeToLiveInSeconds两个参数影响
,其中
tgt.maxTimeToLiveInSeconds定义了缓存中存储的账号认证信息,缓存中认证信息默认有效期为28800s(8小时),即超过8小时缓存中的认证信息就会被删除,但是由于rememberMeDuration属性默认值为1209600s(2周),所以IDM会根据账号信息自动进行登录,并重新在缓存中生成认证信息。

3.唯一在线

将cas.properties中的keepLastTicketGrantingTicket配置改为true,同时注意renewTicketGrantingTicket需要设置为false,二者不能同时为true

唯一在线的登录有效期受tgt.timeToKillInSeconds参数影响,默认7200s,即登录有效期2小时,2小时无操作后自动登出,需要重新进行登录。

同时在开启唯一在线的情况下,在通过IDM认证时,IDM会校验登录浏览器的标识,只有在相同环境下才能自动登录,否则需要重新登录,并且在登录后,IDM会删除缓存中同一账号其他认证信息,保证一个账号只有一个登录信息。

验证方式

IDM的认证机制验证主要是通过IDM平台登录进行验证,主要根据登录时长、不同浏览器访问等方式进行验证。

1.普通认证

普通认证只需要验证登录之后的有效期,主要验证两个内容:

1.登录IDM平台后,无操作等待2小时,重新刷新页面,确认是否需要重新登录。

2.登录IDM平台后,关闭浏览器,再重新打开,访问IDM平台,确认是否需要重新进行登录。

2.自动续期

自动需要主要通过自动登录进行验证:

1.登录IDM平台后,无操作等待8小时,访问Redis,确认当前账号的登录信息已被删除,重新刷新页面,确认是否可以自动登录。

2.登录IDM平台后,关闭浏览器,再重新打开,访问IDM平台,确认是否自动进行登录。

3.修改cas.properties配置,将rememberMeDuration时间调短并重启IDM,登录IDM平台后,关闭浏览器,等时间超过rememberMeDuration后,重新打开浏览器,确认是否需要重新进行登录。

3.唯一在线

唯一在线通过不同的浏览器进行登录验证

1.打开浏览器,登录IDM平台,关闭浏览器,再重新打开,访问IDM平台,确认是否自动进行登录;

2.在不关闭该浏览器的情况下,重新打开一个其他的浏览器,在进行登录之后,刷新原浏览器,确认是否需要重新登录。

分析总结

IDM身份管理平台作为数通畅联的核心产品之一,主要满足5A安全管控需要,在企业的系统整合、统一认证、安全管控等方面提供支撑,并能和ESB、MDM等不同的产品组件形成不同的解决方案,满足实际业务使用的需要。

1.产品功能

IDM平台的主要功能就是统一认证、统一用户、统一授权、统一审计、应用管控的5A管控体系,而统一认证又是其中非常重要和使用频率很高的功能,所以需要能够满足不同业务场景的使用需要,尤其在实际项目和其他业务系统集成时,能够根据业务需要以及不同系统的架构体系,灵活配置、快速支持,才能体现IDM产品的便捷性。

2.方案体系

IDM主要满足5A认证,除了可以单独进行使用,也可以和其他产品组合形成不同的解决方案,如企业集成中台方案(IDM+MDM+ESB)、企业中台体系方案(Portal + IDM + MDM + DAP + ESB)等,无论哪种方案,IDM的作用都是作为安全管控环节,控制系统账号、认证和权限,保证系统访问的安全性和稳定性。而作为标准化的平台和解决方案,IDM的集成模式基本已经固定,在项目过程中只需要根据对接标准快速配置、部署、测试即可。

3.产品优化

作为专注于安全管控的平台,IDM的功能相对已经非常完善和成熟了,以5A安全管控为基础,在认证层面上深化了密码策略、登录策略、异时异地、防暴力破解等机制,并且也具备对数据操作、登录访问、配置修改等方面的监控、记录功能,形成了统一审计的基础。后续IDM产品通过应用于不同的项目和场景,从使用的便捷性、灵活性等角度进行优化,加强集成模式的优化和完善。

而对于实施团队而言,在进行IDM项目实施的过程中,需要不断验证IDM的功能和场景,为产品研发升级提供意见,将标准化、可复用的业务场景、流程纳入到产品方案中,保证后续实施过程中可以快速进行复用和交付,加快实施交付效率的同时保证产品更加人性化、便捷化、敏捷化,提升产品方案在企业业务过程中的促进作用。

返回顶部