【问题背景】
客户反馈单点登录电脑登录域,需要几分钟才能在AC上线才有网络
【问题排查】 1.首先了解下ADDSO单点原理: AD域单点登录免插件模式实现过程:AD域组策略开启登录审核日志记录域用户登录信息,AC上开启域监控单点登录,当PC成功登陆域后,AC会通过wmic进程主动到AD域控制器上检索域上的eventlog日志,获取登录的用户信息单点登录上线。每一次查询都会启一个wmic进程。
2.排查思路: adsso内部域监控单点登录上线流程:查询域登录日志->解析域登录日志->上线用户;需要先确认下域查询过程耗时占比,若该阶段占比过高则在AC无法优化,否则可以使用多进程对查询和数据处理两个阶段分开处理。adsso报文都是加密的,域查询过程的耗时可以通过抓包确认单次查询耗时。
域监控单点登录原理是每隔一秒到服务上拉取登录日志来上线用户;
抓包可以确定如下两点:
①获取单次拉取域服务器登录日志耗时
②根据多次拉取域服务器数据的时间间隔确定单次整体耗时
③根据1,2步数据来确定拉取日志信息在整体处理流程中的耗时占比
3.抓包结果: 两次域监控登录流程间隔时间都在1分钟以上,按照【获取日志开始时间~获取日志结束时间~单次域监控登录结束时间】格式来整理结果如下。其中,拉取日志在14s左右,日志解析和上线用户阶段耗时60s左右 17:34:24.676~17:34:38.371~17:35:38.326
17:35:39.341~17:35:53.661~17:36:53.612
17:36:54.626~17:37:09.196~17:38:09.195
【优化方案】 可以在前端仅配置其中单个eventID来减少单次需要获取和解析的日志量,如配置eventID为4624,即只拉取成功登录事件 2、域监控单点登录流程优化。根据当前客户环境的抓包分析来看,拉取日志时间为14s,而解析和上线用户阶段耗时为60s,比例为1:4,如果能将两个阶段分开,是可以将时间缩短大部分,在性能足够的话耗时趋近于拉取登录日志的时间
3、新增其他单点登录补充方案,如radius单点登录,集成身份认证
【下一步计划】 1、增加其他单点登录方式可以先配置,无风险,一般也是建议是几种单点方式结合一起用提高效率和准确率。
2、研发出包优化,优化效果待定
3、配置优化的话应该是有较大改善,但担心会存在终端没法入网的情况,配置有风险,不建议采用
优先选择方案1解决 |