nvnsdrdy
09/25/2022, 5:53 AMdefinition user {
}
definition team {
relation parent: team
relation team_company:company
relation team_member: company#company_member
relation team_admin: company#company_member
permission add_team_members = team_admin
permission read_members = team_member + team_admin
permission add_team_to_document_group = team_admin
permission remove_team_from_document_group = team_admin
permission add_user_to_document = team_admin
permission remove_user_to_document = team_admin
}
definition company {
relation owner: user
relation company_member: user
relation teams_maintainer: user
// team actions
permission create_teams = owner
permission create_team_admin = owner
permission change_team_name = teams_maintainer
}
definition document_group {
relation disclosed_team: team
relation disclosed_user: user
permission read_document_group = disclosed_user + disclosed_team
}
definition document {
relation discgrp: document_group
relation disc_item_team: team
relation disc_item_user: user
relation reader: document_group#disclosed_user | document_group#disclosed_team | disc_item_user
relation writer: team#team_admin
permission add_item = writer
permission view = reader
}