Мне нужно получить систему разрешений для каждого документа в моем приложении.
Например, для данной модели:
const DictionnarySchema = new mongoose.Schema({
title: String,
words: [{type: mongoose.Schema.Types.ObjectId, ref: 'Word'}],
created_by: {type: mongoose.Schema.Types.ObjectId, ref: 'User'}
readable_by: [{type: mongoose.Schema.Types.ObjectId, ref: 'User'}]
})
- Обычный пользователь должен иметь возможность читатьдокумент (против
readable_by
) - Администратор должен иметь возможность читать и писать в документе
- Пользователь, указанный в
created_by
, должен иметь возможность читать и писать в документе
Какой самый простой способ реализовать это?
Я использую проект CRUD и хотел бы, например, чтобы мое действие по перечислению отображало только доступные документы в зависимости от пользователя, владельца или чтенияразрешение (created_by
и readable_by
и статус администратора без добавления большого количества дополнительного кода для каждого действия.