Логика
Поля записи:
При создании клиент передаёт обязательный веб-адрес, вид родительского объекта и его идентификатор; название можно не
указывать. Компания, автор («Кем создано») и дата создания проставляются автоматически. Поля с собственным
идентификатором записи, датой создания и автором доступны только для чтения; идентификатор родительского объекта клиент
указывает сам.
Поле «Компания» заполняется автоматически из контекста запроса при создании — клиент не может задать его вручную и не
может создать ссылку от имени другой компании.
Кто что может
Все операции со ссылками доступны только авторизованному сотруднику: анонимный запрос получает отказ по авторизации, в том числе на чтение списка и на создание. Изменять и удалять конкретную ссылку может только её автор — тот, кто её добавил, — либо владелец компании (суперпользователь компании). Остальные сотрудники компании чужую ссылку править и удалять не могут: они получают отказ по правам доступа. Ограничение действует и на изменение, и на удаление.Авторство ссылки — настоящая связь с пользователем, а не просто записанное число: целостность гарантируется базой данных.
Если пользователя, добавившего ссылку, удалить, сама ссылка остаётся на месте, а её авторство становится неизвестным
(«без автора») — вместе с этим доступ на изменение остаётся только у владельца компании.