當前位置: 首頁>>代碼示例>>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;未經允許,請勿轉載。