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

一,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);   系统封装的方法也有。
SSO(Single sign-on)即单点登录技术。它是指在多个子系统的大型应用中,用户在子系统之间进行切换时,不需要每次都重新输入用户的身份信息,从而做到一处认证,整个应用系统都能有效识别。单点登录技术的系统集成功能为当前企事业单位尤其是大型多子系统企业系统集成提供了完美的解决方案。它使得这些原有系统能够合理的集成起来,对外提供统一的界面风格和唯一的登录入口。单点登录只是一种功能概念,并没有对具体的实现方式进行定义和限制。NC-Portal单点登录方案,就是SSO技术的一种实现方式。 NC-Portal的SSO方案是基于凭证的思想设计。对于NC-Portal集成的每个第三方系统都有一个制作凭证的页面,该页面用于当前登录的portal用户输入对应的第三方系统的用户信息,在正常情况下,该制作凭证的页面最多出现一次。当用户输入的第三方系统登录信息进行验证后,会自动在portal系统的数据库中建立一对凭证槽和凭证信息,这对信息记录了portal用户在特定的portal布局和特定的portlet下,与该第三方系统的身份对应关系。当该用户之后登录portal并进入被集成第三方系统时,portal系统负责获取之前成功建立的对应第三方系统身份信息,并用该身份信息进行第三方系统的身份认证。这一切的操作对当前登录用户来说都是透明的,他们看到的是没有输入任何身份信息而以正确的身份进入了第三方系统。另外,在用户每次登录第三方系统时,都会根据第三方系统的要求进行身份认证,因此这个登录过程是安全的。 对于NC-Portal来说,对Web系统的集成提供了完善的支持和解决,对Web系统的集成,目前有大小之分。集成一个单独的系统如NC、IUFO、BO、OA系统采用单独的一个布局存放(当然,该布局也是由一个portlet组成),这些Web系统称为“大”系统。另外,还存在一些集成第三方系统的“小”portlet,如NC待办事务Portlet、NC报表Portlet、IUFO报表Portlet等,这些是以“小”Portlet的形式出现的。他们主要提供一些对集成系统的辅助功能,如对NC待办事务的提取、对IUFO报表信息的提取,这两种方式功能侧重点略有不同。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值