Background
Quando um processo de autenticação e autorização não está se comportando como você gostaria que estivesse, uma das primeiras ações a se fazer é habilitar o debug para as classes relacionadas a segurança.
Algumas vezes também, preciso liberar o acesso anonymous ou dar alguma permissão especial a algum recurso via spring-security. Para isso você precisa configurar o arquivo applicationContext-spring-security.xml e informar quais URL's dos recursos serão configuradas.
Então, para descobrir quais URL's são necessárias configurar para alcançar seu objetivo é necessário habilitar o log security, que permitirá identificá-las.
Referência
Passos
1. Faça uma cópia do arquivo biserver-ce\tomcat\webapps\pentaho\WEB-INF\classes\log4j.xml
2. Abra o arquivo log4j.xml e remova todos parâmetros Threshold que encontrar nos <appender>
( Como por exemplo, PENTAHOFILE e PENTAHOCONSOLE )
( Como por exemplo, PENTAHOFILE e PENTAHOCONSOLE )
3. Ainda no mesmo arquivo, procure pela tag <root> e adicione ou mude a tag <priority> para:
<root> <priority value="WARN,ERROR,FATAL" /> <appender-ref ref="PENTAHOCONSOLE"/> <appender-ref ref="PENTAHOFILE"/> </root>
4. Procure dentro do mesmo arquivo pelas classes abaixo. Caso elas existam, configura a tag <priority> para DEBUG. Caso não existam, adicione as mesma antes da tag <root>. Elas irão habilitar o log das classes relacionadas a segurança.
<!-- all Spring Security classes will be set to DEBUG --> <category name="org.springframework.security"> <priority value="DEBUG" /> </category> <!-- all Pentaho security-related classes will be set to DEBUG --> <category name="org.pentaho.platform.engine.security"> <priority value="DEBUG" /> </category> <category name="org.pentaho.platform.plugin.services.security"> <priority value="DEBUG" /> </category>5. Salve e feche o arquivo log4j.
6. Faça uma cópia e abra o arquivo biserver-ce\pentaho-solutions\system\applicationContext-spring-security-<back-end>.xml onde <back-end> é um dos: memory, jdbc, ldap, jackrabbit (5.x) ou hibernate (4.x). Adicione a propriedade hideUserNotFoundExceptions com o valor false no bean da classe DaoAuthenticationProvider.
<bean class="org.springframework.security.providers.dao.DaoAuthenticationProvider"> (...) <!-- other properties/constructor-args not shown --> <property name="hideUserNotFoundExceptions" value="false" /> (...) </bean>7. Salve o arquivo e reinicie o BI Server. Ao iniciar você já começará a ver os logs no console.
Agora é só buscar pela informação que precisa.
Nenhum comentário:
Postar um comentário