当前位置: 首页>>代码示例>>Java>>正文


Java DirContext.getEnvironment方法代码示例

本文整理汇总了Java中javax.naming.directory.DirContext.getEnvironment方法的典型用法代码示例。如果您正苦于以下问题:Java DirContext.getEnvironment方法的具体用法?Java DirContext.getEnvironment怎么用?Java DirContext.getEnvironment使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在javax.naming.directory.DirContext的用法示例。


在下文中一共展示了DirContext.getEnvironment方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getPrincipal

import javax.naming.directory.DirContext; //导入方法依赖的package包/类
/**
 * Return the Principal associated with the given user name.
 */
protected synchronized Principal getPrincipal(DirContext context, String username, GSSCredential gssCredential)
		throws NamingException {

	User user = null;
	List<String> roles = null;
	Hashtable<?, ?> preservedEnvironment = null;

	try {
		if (gssCredential != null && isUseDelegatedCredential()) {
			// Preserve the current context environment parameters
			preservedEnvironment = context.getEnvironment();
			// Set up context
			context.addToEnvironment(Context.SECURITY_AUTHENTICATION, "GSSAPI");
			context.addToEnvironment("javax.security.sasl.server.authentication", "true");
			context.addToEnvironment("javax.security.sasl.qop", spnegoDelegationQop);
			// Note: Subject already set in SPNEGO authenticator so no need
			// for Subject.doAs() here
		}
		user = getUser(context, username);
		if (user != null) {
			roles = getRoles(context, user);
		}
	} finally {
		restoreEnvironmentParameter(context, Context.SECURITY_AUTHENTICATION, preservedEnvironment);
		restoreEnvironmentParameter(context, "javax.security.sasl.server.authentication", preservedEnvironment);
		restoreEnvironmentParameter(context, "javax.security.sasl.qop", preservedEnvironment);
	}

	if (user != null) {
		return new GenericPrincipal(user.getUserName(), user.getPassword(), roles, null, null, gssCredential);
	}

	return null;
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:38,代码来源:JNDIRealm.java

示例2: getPrincipal

import javax.naming.directory.DirContext; //导入方法依赖的package包/类
/**
 * Return the Principal associated with the given user name.
 */
protected synchronized Principal getPrincipal(DirContext context,
        String username, GSSCredential gssCredential)
    throws NamingException {

    User user = null;
    List<String> roles = null;
    Hashtable<?, ?> preservedEnvironment = null;

    try {
        if (gssCredential != null && isUseDelegatedCredential()) {
            // Preserve the current context environment parameters
            preservedEnvironment = context.getEnvironment();
            // Set up context
            context.addToEnvironment(
                    Context.SECURITY_AUTHENTICATION, "GSSAPI");
            context.addToEnvironment(
                    "javax.security.sasl.server.authentication", "true");
            context.addToEnvironment(
                    "javax.security.sasl.qop", spnegoDelegationQop);
            // Note: Subject already set in SPNEGO authenticator so no need
            //       for Subject.doAs() here
        }
        user = getUser(context, username);
        if (user != null) {
            roles = getRoles(context, user);
        }
    } finally {
        restoreEnvironmentParameter(context,
                Context.SECURITY_AUTHENTICATION, preservedEnvironment);
        restoreEnvironmentParameter(context,
                "javax.security.sasl.server.authentication", preservedEnvironment);
        restoreEnvironmentParameter(context, "javax.security.sasl.qop",
                preservedEnvironment);
    }

    if (user != null) {
        return new GenericPrincipal(user.getUserName(), user.getPassword(),
                roles, null, null, gssCredential);
    }
    
    return null;
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:46,代码来源:JNDIRealm.java


注:本文中的javax.naming.directory.DirContext.getEnvironment方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。