简体   繁体   中英

How can I store user-provided data anonymously and still allow users to retrieve their data?

I am writing a Service Now Application that shall store data for each user and day anonymously. This means the records should not be relatable to a user by an admin, howecver, the user should still be able to see their records.

I thought about that I need to suppress the usual created and modified columns, this I plan to du using a workflow. Then I wanted to add an ID column that stores some hash, but if this is a hash of known data (like the user ID), any admin could easily de-anonymize the data. Also, using an additional value that is stored per-user may also be recoverable by an admin. I want the process to be as simple as possible, so for example if the user has to re-enter some password every time they interact, this would not be feasible. Ideally, the value in question is only known to the user and stored on the client, but if they switch browsers or clear cookies, that might cause issues.

I am quite sure this is a problem that was solved before...

Thanks for any input on this!

If your admins have access to your server side scripts, I don't see a way where you could secretly generate and compare hashes per user, without them being able to take the code and run it against usercriteria of the user they want to look into.

If you have serverside code which you can protect from the admins you can just hash usercriteria + currentDate, store this in the database and read it, if there already is a record.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM