Menu

#67 Operacions sobre expedients des de timers fallen per absència d'autenticació

acknowledged
nobody
None
normal
feature
always
none
2.0.0
2011-06-23
2010-09-21
Pak Andrei
No

Originally owned by: josepg

Les operacions que es registren mitjançant el RegistreDao, empren el nom de l'usuari autenticat amb la següent sentència:

SecurityContextHolder.getContext().getAuthentication().getName();

Quan s'executa un Timer (que pareix que s'executa dins el fil net.conselldemallorca.helium.jbpm3.spring.SpringJobExecutorThread), aquest no té autenticació, i per tant dona un NullPointerException quan s'intenta fer qualsevol operació registrada.

En primer lloc supòs que hauríem de determinar si el Timer hauria de tenir permís per fer aquestes operacions (en principi no donen errors de seguretat) i si és així s'hauria de trobar una sol·lució per que hi hagués un objecte d'autenticació (p.e. amb el runAsManager)

Discussion

  • Anonymous

    Anonymous - 2010-09-21

    Originally by: josepg

    Efectivament, això pot ser un problema. Investigarem el RunAsManager a veure si seria factible executar els timers amb un determinat nivell de permisos.

     
  • Pak Andrei

    Pak Andrei - 2010-09-28

    En qualsevol cas ho deixaríem per una versió posterior a la 2.0.1, no?

     
  • Anonymous

    Anonymous - 2011-06-23

    Originally by: josepg

    S'ha canviat la implementació del RegistreDao i ara ja no requereix l'accés a les dades de l'usuari autenticat. Podrieu confirmar si encara es repeteix l'error o detallar una mica més cóm el podem reproduir? (Si podeu adjuntar un export de l'expedient o similar)

     

Log in to post a comment.

MongoDB Logo MongoDB