Preventing contract being logged for a specific human task

1
0
-1

I have a task that allows users to change their password. The problem is that the password details they type are being included in the contract content that is written to the bonita logs (not great security).

I don’t want to turn logging off for ALL human tasks; just this one specific one.
Is that possible?

Or: is there a way to obfuscate what is logged?

Thanks

Chris

2 answers

1
0
-1
This one is the BEST answer!

I don't care what anyone says that's a BUG and should be reported as such...passwords should never be handled in plain case...but how will they implement it...

If you create the report and add a notification here I will support the issue.

regards
Seán

PS: While I understand this may not be the answer you are looking for it does answer your question, please mark as resolved by ticking the tick mark on the left of this reply so others now it is closed.

Comments

Submitted by chris.lowth on Thu, 02/23/2017 - 09:54

For now, I've overcome it with an edit to the bonita-core source code to avoid logging the contract if it contains a key with the fixed name "password". A bit clunky, but good enough for my purposes.

1
0
-1

Or you could try to edit the logging.properties files to prevent the package "org.bonitasoft.engine.api.impl.ProcessAPIImpl" to log in INFO level (try WARN).

I really think the contracts values should never be logged, not only passwords.
It means any administrator can see what is typed in any form. Imagine a Human Resources project where a team discuss on why someone should have a raise or not...

Comments

Submitted by chris.lowth on Thu, 02/23/2017 - 10:36

I think the question of whether contract logging is appropriate depends on the use case and the security regime of the hosting server.

For my application, having the contracts logged is (mostly) fine. I guess it really needs to be a per-task option, possibly with a global default setting which the per-task setting overrides.

Notifications