Esto es una traducción libre del wiki de pentaho 1. Mi objetivo no es quitar la seguridad de pentaho sinó hacer la aplicación accesible para el usuario anónimo.
<bean id="anonymousProcessingFilter" class="org.acegisecurity.providers.anonymous.AnonymousProcessingFilter"> <!-- omitted --> <property name="userAttribute" value="anonymousUser,Anonymous" /> </bean>
<bean id="filterInvocationInterceptor"
class="org.acegisecurity.intercept.web.FilterSecurityInterceptor">
<property name="authenticationManager">
<ref local="authenticationManager" />
</property>
<property name="accessDecisionManager">
<ref local="httpRequestAccessDecisionManager" />
</property>
<property name="objectDefinitionSource">
<value>
<![CDATA[
CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
\A/.*\Z=Anonymous,Authenticated
]]>
</value>
</property>
</bean>
Es importante que en el objectDefinitionSource deje sólo el acceso \A/.*\Z=Anonymous,Authenticated . Verás que hay un momntón de definiciones de acceso. Borralas todas y deja sólo esta.
<beans> <!-- omitted --> <bean id="IAclVoter" class="org.pentaho.platform.engine.security.acls.voter.PentahoAllowAnonymousAclVoter" scope="singleton" /> <!-- omitted --> </beans>
Asegurate de que esto está tal que así:
<pentaho-system>
<!-- omitted -->
<anonymous-authentication>
<anonymous-user>anonymous</anonymous-user>
<anonymous-role>Anonymous</anonymous-role>
</anonymous-authentication>
<!-- omitted -->
</pentaho-system>
<pentaho-system>
<!-- omitted -->
<acl-publisher>
<default-acls>
<acl-entry role="Anonymous" acl="ADMIN_ALL" />
<acl-entry role="Authenticated" acl="ADMIN_ALL" />
</default-acls>
<!-- remove any active overrides entries -->
</acl-publisher>
<!-- omitted -->
</pentaho-system>
<pentaho-system>
<!-- omitted -->
<acl-voter>
<admin-role>Anonymous</admin-role>
</acl-voter>
<!-- omitted -->
</pentaho-system>