#原创分享#上网行为管理AC数据库单点登录认证对接深澜数据库
  

kitt 64091人觉得有帮助

{{ttag.title}}
本帖最后由 kitt 于 2020-5-18 09:00 编辑

0x00 背景
       客户原有深澜认证(学校及企业用户较多)系统实现全单位的互联网wifi及有线终端的实名密码认证,现购置了深信服上网行为管理一台,实现对全单位互联网用户的行为审计管理及流控,AC以网桥模式部署在出口主干上,其他网络环境不多做描述。

0x01 思路
       由于之前在上一个项目相同场景下,参照社区“SANGFOR_AC_SG_v11.0_深澜单点登录测试指导书”去实施,最终却导致和400一起排查各种问题才解决顺利解决。很明显,这种依靠第三方厂家单一开放的接口对接的方式,由于众所周知的原因,维护和更新都会比较慢,相应的BUG数量及处理时间都会随着版本更新增加。
      难道就没有更有效稳定的方式吗?
      接着通过查阅深澜认证的部署文档发现,深澜认证系统有一个核心MYSQL数据库,里面记录着所有用户及上线信息。随即想到我们AC不是有数据库认证吗,这样直接查询认证信息然后同步过来不是更稳定吗?

0x02 验证
      通过联系深澜的工程师,获取到相应数据库的地址及查询权限账号,通过数据库工具查看数据库

      我们可以看到2个重要的表单,online_radiususers

      分别查看
      可以看到online_radius存储的是实时的上线用户及相关信息。
      其中user_name为深澜认证的用户登录账号,IP为在线IP,还有MAC等信息。


      可以看到users表中存储的是用户的详细信息。
      其中user_name为深澜认证的用户登录账号,user_real_name为真实备注姓名,还有手机号等信息。


      既然数据库结构都清晰了,下面就轮到AC的设置了
      配置认证服务器
   “用户认证与管理”---“用户认证”---“认证服务器”
      点击“新增”选择“数据库服务器”


      数据库类型:MYSQL
      服务器地址:深澜数据库地址
      用户名密码:与深澜工程师联系,获取数据库服务器的登录查询权限的账号
      数据库名称:与深澜工程师联系,深澜4K数据库名为srun4k(小写)
      测试有效性,提交




      配置单点登陆查询语句
   “用户认证与管理”---“用户认证”---“单点登陆”------数据库认证
      输入查询语句
      select user_name,ip from online_radius;


      点击测试有效性,可以查询到实时在线的用户名及IP地址信息


      测试配置认证策略
    “用户认证与管理”---“用户认证”---“认证策略”
      认证方式:单点登陆
      单点登陆失败的用户:不需要认证,自动上线


     由于深澜认证允许多终端使用同一账号登陆,因此勾选允许多人同时使用


      查看在线用户信息,可以看到相关用户上线。


0x03 新的需求
       当把在线用户结果信息,呈现给客户查看时,客户却说这不是他想要的效果,他希望用户名呈现的是每个用户的真实姓名,初一听心里一想那不很简单嘛,改个查询的对象不就行了嘛,不就是把user改成user_real_name就行了,结果一试却发现不能成功,仔细查看回想之前的数据库分析发现原来online_radius这个表单里没有user_real_name这一列,user_real_name只存在users这个表单里。


      由于AC设备的方式只能通过一条语句查询数据库,且固定第一列为用户名,第二列为IP,那么我们的语句就是需要一条语句实现跨表查询并呈现结果,通过查询相关资料在数据库测试查询语句 :
      select A.user_real_name,B.ip from users A, online_radius B where A.user_name=B.user_name;
      查询结果符合期望


      更改AC数据库查询语句并测试


      测试结果有效


      确认提交后,进入测试用户组删除已有用户,让用户重新认证查看在线用户列表,结果符合客户要求。



0x04 结论
       如果采用社区原有配置文档的方式对接,明显不能满足本次项目的客户要求,也反映了作为工程师我们需要理解配置的基本原理,才能更加灵活的去面对解决客户变化的需求。
      在进行数据查询测试时,一定要仔细谨慎审核语句,避免破坏数据库完整性,同时在测试查询时加入限制语句,避免影响数据库性能。
      AC的现有的数据认证方式同步内容比较简单方式比较单一,也希望研发后期能丰富更多功能,实现灵活的与各种平台系统对接。




跨表查询.pdf

97.55 KB, 下载次数: 15

上网行为管理AC数据库单点登录认证对接深澜数据库.pdf

595.13 KB, 下载次数: 24

打赏鼓励作者,期待更多好文!

打赏
14人已打赏

sangfor_1143 发表于 2020-5-22 20:19
  
楼主的分享非常不错呦,楼主并没有因为现有的资料而回复客户不支持而是另辟蹊径实现了客户的需求,并且将整个处理过程以及遇到的问题和解决办法都在文章中具体的讲述了,为后续遇到该类问题提供了一个可性的方案:爱你:
Sangfor_95899 发表于 2020-5-28 10:02
  
感谢楼主分享,这是典型的抛砖引玉中的”玉“,理解技术的本质,结合实际环境需求为客户提供最合适的解决方案,已经超越”资深“了,期待楼主更多的案例
Sangfor_闪电回_朱丽 发表于 2020-5-15 16:23
  
您好,感谢您参与社区原创分享计划8,您的文章已被收录到计划中,交由专家评审小组评审,文章标签在专家评审后设置,S奖励预计在一周后到账,其他奖励在活动结束后统一安排发放!发文越多,奖励越多,期待您更多的精彩文章哦!:感恩:
关于技术文章的管理流程,请参考:http://bbs.sangfor.com.cn/forum.php?mod=viewthread&tid=90279
sxfusr 发表于 2020-5-15 20:31
  
打赏学习
新手727241 发表于 2020-5-16 10:06
  
感谢分享
水之蓝色 发表于 2020-5-16 20:41
  
学习了!
gqce 发表于 2020-5-17 21:55
  
点赞,打赏,学习
新手741261 发表于 2020-5-18 10:31
  
感谢分享
新手561208 发表于 2020-6-4 09:26
  
我这边有个客户用的也是深澜的认证服务器
AC对接的时候读取的是用户名+账户名
发表新帖
热门标签
全部标签>
每日一问
2024年技术争霸赛
技术盲盒
干货满满
GIF动图学习
技术笔记
新版本体验
产品连连看
功能体验
技术晨报
信服圈儿
标准化排查
通用技术
技术咨询
信服课堂视频
2023技术争霸赛专题
华北区交付直播
安装部署配置
自助服务平台操作指引
每周精选
答题自测
流量管理
场景专题
畅聊IT
技术圆桌
用户认证
VPN 对接
排障笔记本
华北区拉练
秒懂零信任
终端接入
地址转换
玩转零信任
专家问答
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
每日一记
运维工具
云计算知识
原创分享
解决方案
sangfor周刊
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
授权
设备维护
资源访问
虚拟机
存储
迁移
加速技术
产品预警公告
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
社区帮助指南
答题榜单公布
纪元平台
卧龙计划
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
北京区每日一练
故障笔记

本版版主

147
110
49

发帖

粉丝

关注

本版达人

新手89785...

本周建议达人

七嘴八舌bar

本周分享达人

新手76619...

本周提问达人