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


Java Request.setAuthType方法代码示例

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


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

示例1: reauthenticate

import org.apache.catalina.connector.Request; //导入方法依赖的package包/类
/**
 * Attempts reauthentication to the given <code>Realm</code> using the
 * credentials associated with the single sign-on session identified by
 * argument <code>ssoId</code>.
 * <p>
 * If reauthentication is successful, the <code>Principal</code> and
 * authorization type associated with the SSO session will be bound to the
 * given <code>Request</code> object via calls to {@link Request#setAuthType
 * Request.setAuthType()} and {@link Request#setUserPrincipal
 * Request.setUserPrincipal()}
 * </p>
 *
 * @param ssoId
 *            identifier of SingleSignOn session with which the caller is
 *            associated
 * @param realm
 *            Realm implementation against which the caller is to be
 *            authenticated
 * @param request
 *            the request that needs to be authenticated
 * 
 * @return <code>true</code> if reauthentication was successful,
 *         <code>false</code> otherwise.
 */
protected boolean reauthenticate(String ssoId, Realm realm, Request request) {

	if (ssoId == null || realm == null) {
		return false;
	}

	boolean reauthenticated = false;

	SingleSignOnEntry entry = cache.get(ssoId);
	if (entry != null && entry.getCanReauthenticate()) {

		String username = entry.getUsername();
		if (username != null) {
			Principal reauthPrincipal = realm.authenticate(username, entry.getPassword());
			if (reauthPrincipal != null) {
				reauthenticated = true;
				// Bind the authorization credentials to the request
				request.setAuthType(entry.getAuthType());
				request.setUserPrincipal(reauthPrincipal);
			}
		}
	}

	return reauthenticated;
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:50,代码来源:SingleSignOn.java

示例2: reauthenticate

import org.apache.catalina.connector.Request; //导入方法依赖的package包/类
/**
 * Attempts reauthentication to the given <code>Realm</code> using
 * the credentials associated with the single sign-on session
 * identified by argument <code>ssoId</code>.
 * <p>
 * If reauthentication is successful, the <code>Principal</code> and
 * authorization type associated with the SSO session will be bound
 * to the given <code>Request</code> object via calls to 
 * {@link Request#setAuthType Request.setAuthType()} and 
 * {@link Request#setUserPrincipal Request.setUserPrincipal()}
 * </p>
 *
 * @param ssoId     identifier of SingleSignOn session with which the
 *                  caller is associated
 * @param realm     Realm implementation against which the caller is to
 *                  be authenticated
 * @param request   the request that needs to be authenticated
 * 
 * @return  <code>true</code> if reauthentication was successful,
 *          <code>false</code> otherwise.
 */
protected boolean reauthenticate(String ssoId, Realm realm,
                                 Request request) {

    if (ssoId == null || realm == null) {
        return false;
    }

    boolean reauthenticated = false;

    SingleSignOnEntry entry = cache.get(ssoId);
    if (entry != null && entry.getCanReauthenticate()) {
        
        String username = entry.getUsername();
        if (username != null) {
            Principal reauthPrincipal =
                    realm.authenticate(username, entry.getPassword());                
            if (reauthPrincipal != null) {                    
                reauthenticated = true;                    
                // Bind the authorization credentials to the request
                request.setAuthType(entry.getAuthType());
                request.setUserPrincipal(reauthPrincipal);
            }
        }
    }

    return reauthenticated;
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:49,代码来源:SingleSignOn.java

示例3: reauthenticate

import org.apache.catalina.connector.Request; //导入方法依赖的package包/类
/**
 * Attempts reauthentication to the given <code>Realm</code> using
 * the credentials associated with the single sign-on session
 * identified by argument <code>ssoId</code>.
 * <p>
 * If reauthentication is successful, the <code>Principal</code> and
 * authorization type associated with the SSO session will be bound
 * to the given <code>Request</code> object via calls to 
 * {@link Request#setAuthType Request.setAuthType()} and 
 * {@link Request#setUserPrincipal Request.setUserPrincipal()}
 * </p>
 *
 * @param ssoId     identifier of SingleSignOn session with which the
 *                  caller is associated
 * @param realm     Realm implementation against which the caller is to
 *                  be authenticated
 * @param request   the request that needs to be authenticated
 * 
 * @return  <code>true</code> if reauthentication was successful,
 *          <code>false</code> otherwise.
 */
public boolean reauthenticate(String ssoId, Realm realm,
                                 Request request) {

    if (ssoId == null || realm == null)
        return false;

    boolean reauthenticated = false;

    SingleSignOnEntry entry = lookup(ssoId);
    if (entry != null && entry.getCanReauthenticate()) {
        
        String username = entry.getUsername();
        if (username != null) {
            Principal reauthPrincipal =
                    realm.authenticate(username, entry.getPassword());                
            if (reauthPrincipal != null) {                    
                reauthenticated = true;                    
                // Bind the authorization credentials to the request
                request.setAuthType(entry.getAuthType());
                request.setUserPrincipal(reauthPrincipal);
            }
        }
    }

    return reauthenticated;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:48,代码来源:SingleSignOn.java

示例4: doAuthentication

import org.apache.catalina.connector.Request; //导入方法依赖的package包/类
private boolean doAuthentication(final Request request) {
    String token = request.getHeader("Authorization");
    if (token == null) {
        log.info("Request did not contain any token.");
        return false;
    }

    final String[] tokenParts = token.split(" ");
    if (tokenParts.length != 2 || !tokenParts[0].equalsIgnoreCase("bearer")) {
        log.info("Token was malformed. Token: " + token);
        return false;
    }

    // strip bearer off of the token
    token = tokenParts[1];

    // check if we have a static token that matches
    if (this.staticTokenMap.containsKey(token)) {
        log.info("Site verified using static token.");
        setUserRolesFromStaticToken(request, this.staticTokenMap.get(token));
        request.setAuthType("SYN");
        return true;
    }

    final Verifier verifier = Verifier.create(token);
    if (verifier == null) {
        log.info("Token rejected for not containing correct claims.");
        return false;
    }

    final String url = verifier.getUrl();
    Algorithm algorithm = null;
    if (algorithmMap.containsKey(url)) {
        algorithm = algorithmMap.get(url);
    } else if (algorithmMap.containsKey(null)) {
        algorithm = algorithmMap.get(null);
    }

    if (algorithm == null) {
        log.info("No key found for site: " + url + ".");
        return false;
    }

    if (verifier.verify(algorithm)) {
        log.info("Site verified: " + url);
        setUserRolesFromToken(request, verifier);
        request.setAuthType("SYN");
        return true;
    } else {
        log.info("Token failed signature verification: " + url);
        return false;
    }
}
 
开发者ID:Islandora-CLAW,项目名称:Syn,代码行数:54,代码来源:SynValve.java

示例5: invoke

import org.apache.catalina.connector.Request; //导入方法依赖的package包/类
/**
 * Perform single-sign-on support processing for this request.
 *
 * @param request The servlet request we are processing
 * @param response The servlet response we are creating
 *
 * @exception IOException if an input/output error occurs
 * @exception ServletException if a servlet error occurs
 */
public void invoke(Request request, Response response)
    throws IOException, ServletException {

    request.removeNote(Constants.REQ_SSOID_NOTE);

    // Has a valid user already been authenticated?
    if (request.getUserPrincipal() != null) {
        getNext().invoke(request, response);
        return;
    }

    // Check for the single sign on cookie
    Cookie cookie = null;
    Cookie cookies[] = request.getCookies();
    if (cookies == null)
        cookies = new Cookie[0];
    for (int i = 0; i < cookies.length; i++) {
        if (Constants.SINGLE_SIGN_ON_COOKIE.equals(cookies[i].getName())) {
            cookie = cookies[i];
            break;
        }
    }
    if (cookie == null) {
        getNext().invoke(request, response);
        return;
    }

    // Look up the cached Principal associated with this cookie value
    SingleSignOnEntry entry = lookup(cookie.getValue());
    if (entry != null) {
        request.setNote(Constants.REQ_SSOID_NOTE, cookie.getValue());
        // Only set security elements if reauthentication is not required
        if (!getRequireReauthentication()) {
            request.setAuthType(entry.getAuthType());
            request.setUserPrincipal(entry.getPrincipal());
        }
    } else {
        cookie.setMaxAge(0);
        response.addCookie(cookie);
    }

    // Invoke the next Valve in our pipeline
    getNext().invoke(request, response);

}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:55,代码来源:SingleSignOn.java


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