Adding admin user tracking in catalog

Hi all,

this is a pre-proposal discussion to gather early feedback on the notion of tracking who made modifications to the catalog.

GSIP 179, implemented a few years ago, added the ability to track when a certain catalog entry had been created or modified, and allows to show it on the GUI, e.g., when enabling these two checkboxes in the global settings:

image.png

Then the tables listing catalog items also show this:

Now this is good enough for environments where there is only one “admin” user.
But in environments where each admin has its own separate user name, it’s useful to track also who did the change, as an extra CatalogInfo field.
It might sound a bit childish, but in multi-admin environments it’s important to be able and pin-point a particular user that performed changes (was it me… or the other part time admin… or the external consultant we hired to optimize the setup?).

The work would be pretty much following the lines of GSIP 177 PR, add the field, track its changes with a listener, allow the information to be displayed with a new checkbox.

As with the times, one can also always know by reading the XML representation in the data dir or thought the rest api, e.g. (imagine a new field modifiedBy):

Thoughts?

It makes sense as a requirement. Is the username sufficient? Any GDPR consequences to storing username?

The username is sufficient.

Legislation compatibility is unclear. I would flip the issue and have the user recording off by default, enabled with a system variable, and with documentation stating that it’s the administrator duty to verify legal ramifications when using said functionality.

Cheers
Andrea