⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 checkpermission.java

📁 sso呵呵
💻 JAVA
字号:
package com.mdcl.mocha.jlcmcc.sso;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;

import com.mdcl.mocha.bpm.sdk.ServiceManager;
import com.mdcl.mocha.bpm.sdk.license.ExpiryException;
import com.mdcl.mocha.bpm.sdk.license.LicenseException;
import com.mdcl.mocha.bpm.sdk.license.NotFoundModuleException;
import com.mdcl.mocha.jlcmcc.configmanager.ConfigManager;

/**
 * @author mdcl
 *
 * TODO To change the template for this generated type comment go to Window -
 * Preferences - Java - Code Style - Code Templates
 */
public class CheckPermission {

/**
 * 获取poratl写入客户端的cookie名指定的值
 * @param httpServletRequest
 * @return portal解析出来的用户名
 */
	public static String getUserid(HttpServletRequest httpServletRequest) {
		Cookie[] cookies = httpServletRequest.getCookies();
		String sidString = "";//sso cookie值
		String loadbalanceVal = ""; //负载均衡中规定的服务器标识关键字对应的值
		ConfigManager cm;
		String cookUser = null;
		String server = null;
		try {
			cm = (ConfigManager)ServiceManager.getInstance().getService(ConfigManager.class);
			cookUser = cm.getPath("jlcmcc-serviceinf.properties","cookie.iPlanetDirectoryPro");//获取portal中规定的用户cookie名
			server = cm.getPath("jlcmcc-serviceinf.properties","sso.server");//获取负载均衡中规定的服务器标识关键字

		} catch (NotFoundModuleException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ExpiryException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (LicenseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		if (cookies != null) {
			for (int i = 0; i < cookies.length; i++) {

				/**
				 * 做负载均衡时使用
				 */
			    if (cookies[i].getName().equals(server))
			        loadbalanceVal = cookies[i].getValue();
			    else if (cookies[i].getName().equals(cookUser))
					sidString = cookies[i].getValue();
			}
			return Token2User.getTokenValue(sidString,loadbalanceVal);
		} else
			return null;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -