更新时间:2022-01-19
锐捷sam系统是一套宽带网认证计费管理系统,常用于高校及二级运营商客户,用户上网前必须通过锐捷sam系统的身份认证,用户通过sam系统的认证/注销后,自动在AC上完成认证/注销。如图所示:
数据流的过程如下:
1.PC通过锐捷sam系统认证服务器的认证/注销。
2.锐捷sam系统数据库服务器通知AC设备认证/注销用户,实现单点登录和注销。设置方法:
第一步:设置认证策略,根据需要使用单点登录的用户的IP或MAC设置认证策略,点击『portal认证』→『认证策略』→『新增认证策略』进行配置.
第二步:点击进入『portal认证』→『单点登录』→『第三方设备』页面进行配置。启用[锐捷sam系统]并设置共享密钥,如图:
第三步:在设备上下载锐捷sam单点登录程序,在sam系统的数据库服务器上配置,使得pc登录到sam系统时,数据库服务器向AC发送用户认证信息。
以锐捷sam系统数据库为SqlServer2005为例,说明锐捷sam系统数据库服务器需要做的设置:
1.在[锐捷sam系统]下面的[点击此处下载]”下载rjsam.zip内含logon.exe和触发器sql脚本)到服务器上。解压后,得到如下内容:
2.将触发器所需调用的应用程序logon.exe拷到SAM服务器对应目录下。
3.文件夹2005中存放了为sqlserver2005定制的触发器sql语句,以logon_trigger.sql为例,打开此文件,将内容全选复制后,粘贴到sqlserver查询管理器中,根据实际情况修改如下配置(logout_trigger.sql和update_trigger.sql的修改同logon_trigger.sql):
4.由于上述3个触发器都调用了master数据库的xp_cmdshell命令,该命令默认被SQLSERVER2005禁止调用。这需要执行下图的xp_cmdshell.sql来解除禁用。在[SqlServer2005ManagementStudio]中打开该文件,按[执行]按钮执行。
5.打开SqlServer2005ManagementStudio,找到SAMDB数据库
6.找到[ONLINE_USER]表,点击触发器文件夹图标,右边[对象资源管理器详细信息]空白区域没有任何条目,此时没有新建任何针对“ONLINE_USER”表的触发器,如图:
7.打开文件夹2005目录,双击步骤3描述的三个文件,它们被打开在“SqlServer2005ManagementStudio”中,点击工具条上的“执行”按钮,当前激活tab页对应的触发器被安装,切换tab页,对另外两个触发器也执行同样的安装操作。
8.切换到“对象资源管理器详细信息”tab页,刷新空白区域,可看到触发器完成安装
9.如果需要删除触发器,则在[SqlServer2005ManagementStudio]的[对象资源管理器详细信息]中右击对应触发器,可以看到弹出菜单中有删除项,点击该项将弹出删除对象对话框,点击该对话框的确定键,即可删除对应触发器。
第四步:用户通过锐捷SAM认证的同时通过设备的认证上网。
注意:
1、触发器在SqlServer2000锐捷服务器上的安装过程与2005版类似,不同的是要选择在2000目录下的触发器安装,若存储过程xp_cmdshell已启用,则不需要执行xp_cmdshell.sql。
2、若锐捷sam系统数据库名不是samdb,则将触发器sql语句第一行useSAMDB的[SAMDB]修改成实际的数据库名,若表名和字段名跟示例不同,也需要酌情修改。
3、注意trigger语句中的如下字段,如果多个用户可能同时登录或注销,需要根据用户机构上网人数将@i允许的值改大,一般建议修改最大不要超过2000(高端设备最多支持3000),若保持默认不修改,则客户环境若有两个用户同时登录,则AC只认证一个用户,导致另外一个用户无法上网。如图所示:
如下,修改成可以支持最多10个用户同时登录或者注销:
4、注意trigger语句中的如下字段,当logon.exe向AC发送认证信息时,为保护服务器性能,默认是不开启日志的,如果需要开启日志,则将上演一段置换如下,即带-l参数表示启用日志:
这样在数据库服务器用户主目录下会产生日志如下:
5、设备和trigger脚本中配置的密钥一致,且此密钥不要与其他方式单点登录密钥相同。
6、要求设备和锐捷SAM服务器能互相通讯,锐捷SAM服务器连接设备udp1773端口发送认证信息,不要求用户登录sam系统的数据经过设备。
7、此方法不限于锐捷SAM系统,适用于所有后台数据库为MSSQLSERVER2000/2005的数据库系统,需要酌情修改sql脚本,使得相关库名、表名、字段名与实际使用环境匹配。