Мое приложение имеет аутентификацию, и для того, чтобы пользователь мог редактировать какую-либо строку, он должен быть авторизован для нее (быть ее "владельцем"). Может быть более одного владельца.
Это не тривиальный случай "просто создайте владельца - (1: n) - hasPermission - (n: 1) - Table", потому что существует много таблиц (около 50), и их количество, вероятно, будет расти со временем. .
Единственное, что у меня сейчас есть, это создать что-то вроде:
Permission
UserId --references Users table
TableName -- name of the table he has permissions for
RowId -- Id of the table row that he can edit
Я вижу ряд проблем с этим ... (согласованность, вытягивание всех строк, которыми он владеет, в объекты и т. Д.) *
Есть ли другой шаблон для этого?
edit : масштаб проблемы: ожидается около 50 000 пользователей, 50 таблиц, максимум 100 000 строк на таблицу.