GrantedAuthorityImpl extraAuthority = new GrantedAuthorityImpl( "ROLE_" + attribute.getAttribute());
GrantedAuthorityImpl extraAuthority = new GrantedAuthorityImpl(getRolePrefix() + attribute.getAttribute());
    public Authentication buildRunAs(Authentication authentication,        Object object, ConfigAttributeDefinition config) {        List newAuthorities = new Vector();        Iterator iter = config.getConfigAttributes();        while (iter.hasNext()) {            ConfigAttribute attribute = (ConfigAttribute) iter.next();            if (this.supports(attribute)) {                GrantedAuthorityImpl extraAuthority = new GrantedAuthorityImpl(                        "ROLE_" + attribute.getAttribute());                newAuthorities.add(extraAuthority);            }        }        if (newAuthorities.size() == 0) {            return null;        } else {            for (int i = 0; i < authentication.getAuthorities().length; i++) {                newAuthorities.add(authentication.getAuthorities()[i]);            }            GrantedAuthority[] resultType = {new GrantedAuthorityImpl("holder")};            GrantedAuthority[] newAuthoritiesAsArray = (GrantedAuthority[]) newAuthorities                .toArray(resultType);            return new RunAsUserToken(this.key, authentication.getPrincipal(),                authentication.getCredentials(), newAuthoritiesAsArray,                authentication.getClass());        }    }