单点登录配置应用指导(含s-HR及EAS)
1. 概述
本文档旨在指导系统管理员变更EAS及s-HR的单点登录密钥。
如果第三方系统通过单点登录方式对接金蝶EAS和s-HR系统时,如果对接出现异常,请根据第三方系统界面提示或日志提示,参照该文档重新生成EAS和s-HR密钥。
【注意】:EAS和s-HR分别使用两个不同的密钥,根据提示处理即可,然后在第三方系统中维护该密钥。
1.1. 适用范围
通过单点登录方式集成EAS公有环境的客户,需要处理。
通过单点登录方式集成s-HR公有环境+私有环境的客户,需要处理。
对于通过s-HR或者EAS单点登录到第三方系统的集成,则无需处理。
1.2. 适用版本
金蝶s-HR V8.2 SP2及以上版本、EAS V8.2及以上版本;
星空企业版 V8.2 PT-151005及以上;星空标准版V8.2 PT-151004及以上。
1.3. 联系我们
s-HR总体联系人:谢卫勇 19925231530;肖敏13168026316
EAS总体联系人:贺武晖13168036190
s-HR单点登录密钥生成问题:武晨曦13510427167;郭功全18927409960
EAS单点登录密钥生成问题:罗君15827433391
在星空企业版维护s-HR密钥问题:岳世英13631595202;詹政18511249435
在南北极培训系统维护s-HR密钥问题:戴功浩15920099835
在s-HR考勤机系统维护s-HR密钥问题:曾伟15813717712
在EAS系统维护s-HR密钥问题:韦花玲13143443811
2. s-HR单点登录密钥配置
2.1. 在s-HR系统中重置并获取新密钥(如果已经重置过密钥,可忽略)
步骤一、重置密钥(如果已经重置过密钥,可忽略):
操作路径:使用administrator登录s-HR的PC端,进入专业应用->系统设置->基础服务维护->单点登录配置->OTP认证设置,选择【重置密钥】按钮,输入认证信息后点击【确认】重置密钥。
【提醒】:重置密钥后会影响第三方系统单点登录访问s-HR系统。每次重置密钥后都需要到第三方系统重新维护新密钥,不然会影响第三方系统单点登录到s-HR,或者第三方系统与s-HR系统集成。
步骤二、获取密钥:再点击【查看密钥】按钮,输入正确的认证信息,会出现【复制密钥】按钮,点击【复制密钥】按钮,密钥信息会复制到剪切板上。使用粘贴剪切板上的密钥到第三方系统维护新密钥。
步骤三. 在第三方系统中维护新密钥
当在s-HR系统中重置密钥后,与s-HR单点登录的第三方系统需要维护新密钥,常见方法如下:
部署类型 | 维护s-HR密钥方式 | 备注 |
标准SDK-列名系统 | 参见步骤三(1)章节 | |
标准SDK-非列名系统 | 参见步骤三(2)章节 | jar包名称可能不同,请在SDK的jar包目录下找文件,路径: com/kingdee/shr/sso/client/ltpa/LtpaToken.properties |
代码实现的其它系统 | 找到密钥引用位置,维护新密钥 | 务必进行验证测试 |
(1)在金蝶列名的第三方系统中维护s-HR密钥的方法(标准SDK方式)
业务 | 更新密钥方法 |
金蝶云星空与s-HR集成
| 适用版本:星空企业版 V8.2 PT-151005及以上;星空标准版V8.2 PT-151004及以上 1、从s-HR获取并复制新密钥(见2.1章节) 2、从星空开放平台(https://open.kingdee.com/K3Cloud/Open/PTDownload.aspx)下载最新补丁,并安装; 3、金蝶云-星空->基础管理->公共设置->s-HR集成->s-HR集成配置 将新密钥拷贝到 s-HR单点登录密钥字段中。 4、如果不在星空中维护新密钥,以下功能将受影响: (1)、在星空侧做【强制更新s-HR数据】操作会报错; (2)、在星空侧对s-HR推过来的工资代发单做【退回s-HR】和【删除】操作会报错;(3)、在星空侧审批通过的出差申请单往s-HR同步生成s-HR的出差单时会异常,无法生成。 |
南北极与-s-HR集成 | 1、 从s-HR获取并复制新密钥(见2.1章节) 2、 联系南北极技术支持(15920099835),告知他新密钥,让其更新私包。 |
考勤机与s-HR集成 | 1、从s-HR获取并复制新密钥(见2.1章节) 2、公有云考勤机系统,请使用administrator账户到系统设置->金蝶考勤机权限分配,通过【分配权限】->【OTP接口密钥】维护s-HR系统密钥; 私有云考勤机系统,请到Program Files (x86)\kingdee\KDAttendCtrl\ini,找到TokenConfig.xml文件,修改其中的key参数为s-HR的密钥 3、技术支持:15813717712 |
EAS与s-HR集成 | 1、 从s-HR获取并复制新密钥(见2.1章节) 2、 更换新密钥,修改shrIntegradeEasConfig.properties中 otp.domino.secret=新密钥 |
s-HR云服务 | 1、s-HR cloud V8.6.1.2 以及以上版本 1)以管理员用户登录s-HR的PC端,打开标准产品【刷新企业密钥】按钮,步骤:进入视图搜uipk:com.kingdee.shr.cloudservice.cloudconn,增加如下红框语句<button name=”refreshSecKey“ visible=”true” caption=”刷新企业密钥”/> 2)进入菜单:系统设置-》云服务设置-》云服务注册及连接 3)点击刷新企业密钥 4)如果刷新不成功,请联系金蝶技术支持:15822869305 2、s-HR Cloud V8.6.1.2以下版本,联系金蝶技术支持:15822869305 |
(2)在非金蝶列名的第三方系统中维护s-HR密钥的方法(标准SDK方式)
找到SDK jar包;用解压工具打开 SDK jar包,进入com/kingdee/shr/sso/client/ltpa/目录
取出LtpaToken.properties文件
1) 修改 LtpaToken.properties文件中的opt.domino.secret中的值,具体见图示:
2) 将文件 LtpaToken.properties放进 SDK jar包中的com/kingdee/shr/sso/client/ltpa/目录下;
3) 将新的SDK部署对应环境下。
2.2. 不建议的应急策略(不推荐)
如果第三方系统与s-HR单点登录异常时,建议您按照2.1章节重新生成密钥(如果已经重置过密钥,可忽略)。如果确实紧急情况需要继续使用当前密钥,可以临时通过如下方法应急处理(建议尽快安排时间重新生成密钥):
使用administrator登录s-HR的PC端,进入专业应用-》系统设置-》基础服务维护-》单点登录配置-》OTP认证设置,去掉勾选【禁止使用不安全密钥】,点击【保存】。
3. EAS单点登录密钥配置
3.1. 重置密钥(如果已经重置过密钥,可忽略):
操作路径:使用administrator登录portal的PC端,然后访问EAS LTPA密钥配置界面,
界面地址:http://ip:端口/portal/pages/login_check/LTPACheck.jsp
操作界面如下图所示:
操作步骤:
1、点击【刷新密钥】按钮,会随机生成一个密钥,并显示在【密钥】输入框(只读);
2、将【密钥】输入框的密钥配置到需要单点到EAS的第三方LTPA 配置中;
3、配置完成后,点击【保存生效】按钮,即可生效密钥。(密钥保存生效后【密钥】输入框显示会脱敏处理;如需要,请在保存生效前记住密钥以配置到第三方系统)
【提醒】:重置密钥会影响第三方系统单点登录访问EAS系统,每次密钥刷新并保存生效后都需要到第三方系统重新维护新密钥,不然会影响第三方系统单点登录到EAS,或者第三方系统与EAS系统集成。
3.2. 不建议的应急策略(不推荐)
当第三方系统单点登录到EAS出现以下界面,则说明系统还是使用了旧密钥,第三方单点登录到EAS会被拦截,需要尽快刷新密钥,否则第三方系统无法单点到EAS。
如果确实紧急情况需要继续使用旧密钥, 请在EAS LTPA密钥配置界面中的【密钥安全风险提示】信息栏中点击【取消拦截】来继续使用旧密钥。但只作为临时应急方法(建议尽快安排时间重新刷新密钥),操作如下图所示:
3.3. 在第三方系统维护新密钥
1、若之前有二次开发用到的LTPATokenManager.jar包,请更新包中的LtpaToken.properties
文件中domin.secret属性值为新密钥。
2、如果未用到这个包,请更新第三方系统用到的LTPA密钥文件,具体路径以实际二开使用的路径为准,并更新对用的密钥属性值为新密钥即可:
4. 常见问题&排查方法
使用s-HR OTP方式单点登录时,常见的返回信息及解决办法。
问题 | 返回信息 | 排查解决 | 登录是否成功(若成功才可进行接口调用) |
限制密钥单点登录 | sso access error:{"code":1,"message": "1、(强烈推荐)使用新密钥访问s-HR系统。操作路径:使用administrator登录s-HR的PC端,进入专业应用-》系统设置-》基础服务维护-》单点登录配置-》OTP认证设置,选择【重置密钥】按钮,输入认证信息重置密钥,重置密钥成功后,再点击【查看密钥】按钮,输入正确的认证信息,会出现【复制密钥】按钮,点击复制密钥按钮,密钥信息会复制到剪切板上。使用粘贴剪切板上的密钥重新部署。 2、(不推荐)继续使用当前OTP密钥。使用administrator登录s-HR的PC端,进入专业应用-》系统设置-》基础服务维护-》单点登录配置-》OTP认证设置,不勾选【禁止使用不安全密钥】,即可继续使用当前密钥访问s-HR系统。"} | 1.按照返回说明的两种解决方案进行排查解决。
2.排查s-HR服务端apusic日志。
搜索 (SHR_OTP_DISABLEINITSECRET)关键字,如有搜到,说明是限制密钥登录问题,按照推荐方案处理。 | 失败 |
单点登录的token已被使用,token只能使用一次,不能重复使用。 | sso access error:{"code":2,"message":"token已被使用!"} | 1.OTP方式生成的token为一次性密码,使用后失效,重新生成token使用即可解决。
2.排查s-HR服务端apusic日志。 搜索(token已被使用) | 失败 |
单点登录token已过期或不合法:token已过期(token默认有效期为30分钟),token不合法:生成token的密钥不匹配,s-HR服务端密钥要和第三方使用的密钥匹配 | sso access error:{"code":3,"message":"token已过期或不合法!"} | 1.检查token是否过了有效期,若要延长有效期,请配置token.expiration参数。(生成token后需要再有效期内使用) 2.检查s-HR端与第三方系统的密钥是否匹配。
3.排查s-HR服务端apusic日志 搜索(token已过期或不合法) | 失败 |
单点登录的用户不存在 | sso access error:{"code":4,"message":"token不合法!"} | 1.排查单点登录的用户是否存在。 2. 排查s-HR端apusic日志. 可搜索(token不合法) | 失败 |
单点登录登录失败 | 1.在返回html中 搜索 flowExecutionKey关键字,如果包含,说明是返回EAS首页。 2.请检查s-HR服务端apusic日志。可搜索(ltpa关键字) | 失败 | |
单点登录成功 | 此返回html中包搜索_jsBizMultiLan_关键字 ,如果存在可根据此属性判断是否登录成功 | 成功 |
单点登录配置应用指导(含s-HR及EAS)
本文2024-09-22 22:14:27发表“s-hr cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-shr-125309.html