金蝶EAS8.5.0(s-HR8.5 SP1)单点登录实现

72 篇文章 23 订阅
2 篇文章 0 订阅

基于金蝶EAS8.5.0(s-HR8.5 SP1),生成OTP一次性密钥,拼接单点登录链接,用于单点登录到金蝶EAS(s-HR)系统;

其中,配置文件(SSC_LTP)为LtpaToken.properties,需要从金蝶EAS服务器获取实际的文件;

LtpaTokenManager工具类,需要向金蝶开发人员索取对应的jar包。

以下代码用法:基于配置文件和金蝶提供的工具类,生成单点登录链接,可直接跳转到金蝶系统,实现单点登录。

package com.kingdee.eas.si.util;

import java.net.URLEncoder;
import com.kingdee.eas.cp.eip.sso.ltpa.LtpaTokenManager;

/**
 * 单点登录工具类,拼接单点登录地址
 * 请根据实际情况,修改变量,或抽取到配置文件中
 * @author 郭旭
 *
 */
public class SsoUtil {
	
	/**s-HR系统地址:IP/PORT**/
	public static final String URL = Resource.get("SSC_URL");
	
	/**(请根据实际情况修改)配置文件路径**/
	public static final String PATH = Resource.get("SSC_LTP");
	
	/**(不可修改)单点登录跳转路径**/
	public static final String SSO = "/portal/index2sso.jsp?";
	
	/**
	 * 根据用户名,拼接单点登录链接地址
	 * 需要跳转到门户时,redirectTo=/
	 * 如需跳转s-HR系统首页:redirectTo=/shr
	 * @param user 用户名
	 * @return 单点登录链接
	 * 
	 */
	public static String getUrl(String user) throws Exception {
		
		StringBuffer url = new StringBuffer();
		url.append(URL).append(SSO);
		String password = LtpaTokenManager.generate(user, PATH).toString(); //生成一次性密钥
		url.append("username=").append(URLEncoder.encode(user, "UTF-8"));
		url.append("&password=").append(URLEncoder.encode(password, "UTF-8"));
		url.append("&redirectTo=/");
		
		return url.toString();
		
	}

}

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值