I have to design following system and am quite stuck on what the best
way would be to solve the problem:
There are several of the same databases for different clients (they
have to be different because they are hosted on different machines).
Currently authentication is done with every client database.
Some clients (they decide) will have access to a centralized library
and can generate and/or read content.
I now wonder how I can make sure that only person A from company ABC
can edit/delete content in the Library while person B from company DEE
can only read the content. Since person A and B are from different
companies/databases they might have the same user IDs and their login
information (email, password) might change over time (so some sort of
hash for identification would not work).
So how can I make sure that the centralized database will know that it
deals always with the same user?
One way would be to store a unique has in the library and update the
hash once the user changes his/her information but is this the best
approach?
I hope my problem is clear.
I'd be really happy if anyone has some ideas on how I can approach
this design question.
Regards,