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


Java GenericPrincipal.getRoles方法代码示例

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


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

示例1: writePrincipal

import org.apache.catalina.realm.GenericPrincipal; //导入方法依赖的package包/类
public static void writePrincipal(GenericPrincipal p, ObjectOutput out) throws IOException {
	out.writeUTF(p.getName());
	out.writeBoolean(p.getPassword() != null);
	if (p.getPassword() != null)
		out.writeUTF(p.getPassword());
	String[] roles = p.getRoles();
	if (roles == null)
		roles = new String[0];
	out.writeInt(roles.length);
	for (int i = 0; i < roles.length; i++)
		out.writeUTF(roles[i]);
	boolean hasUserPrincipal = (p != p.getUserPrincipal() && p.getUserPrincipal() instanceof Serializable);
	out.writeBoolean(hasUserPrincipal);
	if (hasUserPrincipal)
		out.writeObject(p.getUserPrincipal());
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:17,代码来源:SerializablePrincipal.java

示例2: isCallerInRole

import org.apache.catalina.realm.GenericPrincipal; //导入方法依赖的package包/类
@Override
public boolean isCallerInRole(final String role) {
    final Principal principal = getCallerPrincipal();
    if (TomcatUser.class.isInstance(principal)) {
        if ("**".equals(role)) {
            return true; // ie logged in through tomcat
        }

        final TomcatUser tomcatUser = (TomcatUser) principal;
        final GenericPrincipal genericPrincipal = (GenericPrincipal) tomcatUser.getTomcatPrincipal();
        final String[] roles = genericPrincipal.getRoles();
        if (roles != null) {
            for (final String userRole : roles) {
                if (userRole.equals(role)) {
                    return true;
                }
            }
        }
        return false;
    }
    return super.isCallerInRole(role);
}
 
开发者ID:apache,项目名称:tomee,代码行数:23,代码来源:TomcatSecurityService.java

示例3: createPrincipal

import org.apache.catalina.realm.GenericPrincipal; //导入方法依赖的package包/类
public static SerializablePrincipal createPrincipal(GenericPrincipal principal)
{
    if ( principal==null) return null;
    return new SerializablePrincipal(principal.getName(),
                                     principal.getPassword(),
                                     principal.getRoles()!=null?Arrays.asList(principal.getRoles()):null,
                                     principal.getUserPrincipal()!=principal?principal.getUserPrincipal():null);
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:9,代码来源:SerializablePrincipal.java

示例4: writePrincipal

import org.apache.catalina.realm.GenericPrincipal; //导入方法依赖的package包/类
public static void writePrincipal(GenericPrincipal p, ObjectOutput out)
        throws IOException {
    out.writeUTF(p.getName());
    out.writeBoolean(p.getPassword()!=null);
    if ( p.getPassword()!= null ) out.writeUTF(p.getPassword());
    String[] roles = p.getRoles();
    if ( roles == null ) roles = new String[0];
    out.writeInt(roles.length);
    for ( int i=0; i<roles.length; i++ ) out.writeUTF(roles[i]);
    boolean hasUserPrincipal = (p != p.getUserPrincipal() &&
            p.getUserPrincipal() instanceof Serializable);
    out.writeBoolean(hasUserPrincipal);
    if (hasUserPrincipal) out.writeObject(p.getUserPrincipal());
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:15,代码来源:SerializablePrincipal.java

示例5: createPrincipal

import org.apache.catalina.realm.GenericPrincipal; //导入方法依赖的package包/类
public static SerializablePrincipal createPrincipal(GenericPrincipal principal) {
	if (principal == null)
		return null;
	return new SerializablePrincipal(principal.getName(), principal.getPassword(),
			principal.getRoles() != null ? Arrays.asList(principal.getRoles()) : null,
			principal.getUserPrincipal() != principal ? principal.getUserPrincipal() : null);
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:8,代码来源:SerializablePrincipal.java

示例6: digest

import org.apache.catalina.realm.GenericPrincipal; //导入方法依赖的package包/类
@Test
public void digest() {
    final GenericPrincipal gp = getGenericPrincipal(new CdiEventRealm().authenticate("ryan", "md5", "nonce", "nc", "cnonce", "qop", "realm", "md5a2"));
    final String[] actual = gp.getRoles();
    final String[] expected = new String[] {"ryan", "md5", "nonce", "nc", "cnonce", "qop", "realm", "md5a2"};

    Arrays.sort(actual);
    Arrays.sort(expected);

    assertArrayEquals(actual, expected);
}
 
开发者ID:apache,项目名称:tomee,代码行数:12,代码来源:CdiEventRealmTest.java

示例7: getUser

import org.apache.catalina.realm.GenericPrincipal; //导入方法依赖的package包/类
@Override
public User getUser(Renderer renderer, HttpServletRequest request)
		throws IOException {

	final Principal userPrincipal = request.getUserPrincipal();
	if (userPrincipal == null)
		throw new AuthException("No authenticated user");
	final String remoteUser = userPrincipal.getName();
	String domain = renderer.getAuthDomain();

	User user = AuthUserCache.INSTANCE.get(remoteUser, domain);
	if (user != null)
		return user;

	GenericPrincipal genericPrincipal = (GenericPrincipal) userPrincipal;
	final String[] roles = genericPrincipal.getRoles();
	if (roles != null)
		for (int i = 0; i < roles.length; i++)
			roles[i] = roles[i].toLowerCase();

	user = new User(remoteUser, request.getRemoteUser(), null, roles);

	Logging.info("USER authenticated: " + user);

	AuthUserCache.INSTANCE.add(remoteUser, domain, user);
	return user;
}
 
开发者ID:jaeksoft,项目名称:opensearchserver,代码行数:28,代码来源:AuthPluginWaffle.java

示例8: getGroupsForUser

import org.apache.catalina.realm.GenericPrincipal; //导入方法依赖的package包/类
/**
 * @see org.kie.internal.task.api.UserGroupCallback#getGroupsForUser(java.lang.String, java.util.List, java.util.List)
 */
@Override
public List<String> getGroupsForUser(String userId, List<String> groupIds,
        List<String> allExistingGroupIds) {
	List<String> roles = null;
    try {
    	HttpServletRequest request = HttpRequestThreadLocalFilter.TL_request.get();
        Principal principal = request.getUserPrincipal();
        if (principal instanceof GenericPrincipal) {
            GenericPrincipal gp = (GenericPrincipal) principal;
            String[] gpRoles = gp.getRoles();
            roles = new ArrayList<String>(gpRoles.length);
            for (String role : gpRoles) {
                roles.add(role);
            }
        } else if (principal instanceof MemoryUser) {
        	MemoryUser mu = (MemoryUser) principal;
        	Iterator<Role> iter = mu.getRoles();
        	roles = new ArrayList<String>();
        	while (iter.hasNext()) {
        		roles.add(iter.next().getRolename());
        	}
        } else if (principal instanceof SimplePrincipal) {
            return new ArrayList<String>(((SimplePrincipal) principal).getRoles());
        }
    } catch (Exception e) {
        logger.error("ErrorGettingRoles for user " + userId, e); //$NON-NLS-1$
    }
    return roles;
}
 
开发者ID:Governance,项目名称:dtgov,代码行数:33,代码来源:DTGovUserGroupCallbackTomcat.java

示例9: createSessionDetails

import org.apache.catalina.realm.GenericPrincipal; //导入方法依赖的package包/类
/**
 * Creates the session details.
 *
 * @param host the host.
 * @param application the application.
 * @param sessionId the session id.
 * @return the session details.
 */
public static SessionDetails createSessionDetails(Service service, String host, String application, String sessionId) {
    
    String id = TomcatUtil.createTomcatApplicationId(application);
    StandardSession session = getSession(service, host, id, sessionId);
    
    SessionDetails result = null;

    if (session != null) {
        result = new SessionDetails();

        // session info
        result.setInfo(session.getInfo());

        // create session basic information
        Session tmp = createSession(host, application, session);
        result.setSession(tmp);

        // load user roles
        GenericPrincipal principal = (GenericPrincipal) session.getPrincipal();
        if (principal != null) {
            String[] roles = principal.getRoles();
            if (roles != null) {
                result.setRoles(Arrays.asList(roles));
            }
        }

        if (session instanceof StandardSession) {

            StandardSession standardSession = (StandardSession) session;

            // is new session flag
            result.setNewSession(standardSession.isNew());

            double size = 0;
            double sizeSerializable = 0;

            List<Attribute> attributes = new ArrayList<Attribute>();

            Enumeration enumerator = standardSession.getAttributeNames();
            while (enumerator.hasMoreElements()) {
                String name = (String) enumerator.nextElement();
                Attribute attr = createAttribute(name, standardSession.getAttribute(name));
                attributes.add(attr);
                size = size + attr.getSize();
                sizeSerializable = sizeSerializable + attr.getSerializableSize();
            }

            result.setSize(size);
            result.setSizeSerializable(sizeSerializable);
            result.setAttributes(attributes);
        }

    }
    return result;
}
 
开发者ID:lorislab,项目名称:smonitor,代码行数:64,代码来源:TomcatUtil.java


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