-
Notifications
You must be signed in to change notification settings - Fork 168
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for Team level authorization in Atlas/WebAPI #2369
Comments
Thanks for posting this here for discussion. As we spoke on the team call, I wanted to propose an alternative way to isolate 'team assets' that doesn't depend on permission arrangement. My concern is that 'weaving' team functionality into the permission layer will lead to complexity in the codebase insofar that if you want to manage functionality realted to teams, you have to manipulate the permission subsystem. I'd rather see Team functionality a full-fledged 'thing' in the system. So to that end, I propose the following: We have a common entity for all of our assets in teams called a So if we add a new entity This is what the data model would look like: We can use the existing entity definitions as a guide, but I belive by adding the new Enity type (Team) and defining a field of TeamId as a I believe this will give a nice separation of concerns between what permissions do vs. what team assignment to assets does, and may simplify our design. It may also have some drawbacks, and I'm eager to hear thoughts or concerns on this. |
Thanks @chrisknoll !
Let me know what you think! |
Expected behavior
New feature request: Following-up on the recent "read restricted" feature introduced in #2222 and documented at https://github.com/OHDSI/WebAPI/wiki/Read-restricted-Configuration, it would be nice to have a way to assign permissions on artifacts (like concept sets and cohort definitions) to a group/team of users, so members of the same team can see and use each others artifacts, while at the same time hiding them/restricting their access for other teams.
Actual behavior
Currently any user sees all artifacts created by all other users. With the recent "read restricted" feature referenced above, it is also possible to let the user see only the artifacts he has personally authored.
Background info
Below are some figures and diagrams clarifying the requirements (taken from slides recently presented in one of our dev calls).
Diagram steps explained:
sec_user_role
table is updated for user X, assigning the corresponding "team A" role to user X and removing any other user roles assigned to this user (e.g. "team B" from a previous session by this same user)The text was updated successfully, but these errors were encountered: