浅谈用友NC产品单点登录机制

liguo141205 2017-08-15 11:10:19
一,NCV5
1):单点业务系统
第三方系统单点到NC业务系统原理为注册认证key值,然后用key登陆系统
注册认证:
String urlString = ServerConfiguration.getServerConfiguration().getMasterEndpointURL().replaceAll ("/ServiceDispatcherServlet", "");
String keyid = "用于认证的自定义标准";
urlString = urlString + "/service/RegisterServlet?key=" + keyid+ "&usercode=" + usercode+ "&pwd=" + userpassword + "&accountcode=" + accountCode+ "&pkcorp=" + pk_corp;
URL url = new URL(urlString);
connection = (HttpURLConnection) url.openConnection();
connection.connect();
用keyid 登陆系统
var frameID = document.createElement("iframe");
frame.src = “http://ip:port/login.jsp?key="+keyid ;
2):单点到业务系统并打开节点
要单开节点需要先单点登陆系统,然后再NCApplet反射机制打开节点
var applet = ncFrame.contentWindow.document.applets["NCApplet"];
applet .callNC("nc.ui.sm.webcall.OpenNCNode","openNode","节点号");
nc.ui.sm.webcall.OpenNCNode为反射类,具体参考java API说明。
3):单点到HR自助系统
机制很简单,直接用response的sendRedirect方法就ok
response.sendRedirect("/hrss/access.login.d?HRSS_LOGIN_USER_ENCODED="+ usercode + "&HRSS_LOGIN_PSWD="+ loginPswd + "&HRSS_DATA_SOURCE=" + ds);
4):单点HR自助系统并打开节点
这里不做详细介绍,web节点都是拼接URL地址,但要说明的是产品提供了直接打开节点的功能,有兴趣的朋友可以研究一下
nc.bs.hrss.url.URLDirectController这个controller类。

二,NCV6
1):单点业务系统
NCV6不做详细介绍,平台强大得什么都给我们做了,具体参考SSORegisterServlet,看不懂的转行吧,哈哈!
2):单点到业务系统并打开节点
portal uap 已经无缝集成了NC业务系统节点,可以用业务中心管理员登陆portal门户,再跟下代码就明白
3):单点到portal平台
可以使用LoginHelper<PtSessionBean> portal验证登陆方式登陆(区别于portal登陆界面输入用户密码验证码,这里不用)
可以使用uap portal提供的强大的登陆链完成,不过这个过程需要往数据库insert一条语句,具体参考基类AbstractVerifyChain
4):单点到portal平台 并打开节点
这里不做详细介绍,web节点都是拼接URL地址,然后response.sendRedirect(url); 系统封装的方法也有。
...全文
1445 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
davidfangX 2019-05-24
  • 打赏
  • 举报
回复
大神,你好。我目前正在做57打开节点和待办消息的。之前是在用友工作的,但是对于类反射打开节点的实现不太理解,你能否指导一下
sylphfan 2018-08-04
  • 打赏
  • 举报
回复
我们使用OAuth2.0实现单点登录

2,679

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 ERP/CRM
社区管理员
  • ERP/CRM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧