# 免密认证源登录

免密认证源登录就是用户无感知访问第三方应用系统。

免密认证流程

img.png

免密认证流程描述

(1)、应用系统以iframe形式嵌入其他应用的页面。
(2)、应用系统需要新增其他应用菜单,其他应用提供页面访问地址、认证源编码。
(3)、应用系统打开第三方应用的菜单。
(4)、应用系统根据当前用户生成临时token
(5)、携带token以及认证源编码访问第三方应用地址。
(6)、第三方系统接收到字符串参数之后,调用免密认证源验证Token并返回用户的接口地址并完成应用系统的登录认证。
(7)、应用系统成功打开第三方应用的页面。

应用系统集成第三方应用系统页面--基于HOS开发的系统

第一步、第三方应用维护免密认证源

`免密登录配置访问地址:https://114.251.235.9:8346 接下来以HRP系统为例,在HRP系统免密登录配置模块配置OA系统认证源 进入【系统管理】->【免密登录】 img.png

img.png


提示

编码:免密访问认证源编码,本示例的该值是OA
名称:名称
是否启用:开启
验证token地址:OA系统验证token并返回登录用户的接口地址(https://114.251.235.9:8334/api/login/passwordFree/userInfo)


第二步、应用系统新增第三方应用的菜单

菜单配置访问地址:https://114.251.235.9:8334 接下来以OA系统为例,在OA系统配置菜单,菜单外链第三方系统的页面; 进入【系统管理】->【菜单管理】 img.png

img.png


提示

路由:第三方应用系统页面的访问地址
打开方式:选择iframe
是否外链:开启
是否免密:开启
认证源编码:第三方系统提供认证源编码,本示例的该值是OA


第三步、应用系统新增配置

应用系统需要在配置文件中hos-security:login:white-list新增免密认证源验证Token并返回用户的接口地址。

hos-security:
  login:   
    white-list:                                         #认证白名单
      - /login/passwordFree/userInfo   #免密认证源验证Token并返回用户的接口地址

第四步、在应用系统前端点击对应的菜单

正常情况下会成功进入第三方应用的系统页面 img.png

异常情况下,会在菜单页面显示错误信息,具体如下:

img.png

报错一:请维护免密认证源!!

解决思路:到第三方应用系统的【免密登录】模块确定是否配置了当前菜单指定的认证源,确保认证源配置的编码和验证token地址正确

报错二:freeToken无效或者异常!!

解决思路:首先到第三方应用系统的【免密登录】模块确定是否配置了当前菜单指定的认证源,确保认证源配置的验证token地址正确 另外token目前的有效期是五分钟,确定是否过期,如果过期,重新生成token

报错三:用户或人员不存在,请联系管理员

解决思路:第三方系统里面没有对应的登录用户,需要在第三方系统创建对应的用户

报错四:系统内部报错

解决思路:首先到第三方应用系统的【免密登录】模块确定是否配置了当前菜单指定的认证源,确保认证源配置的验证token地址正确,如果正确的话,联系开发人员进行bug排查