Если на языке абстракций - то условно у вас есть документ и к нему все имеют доступ на чтение. Это значит, что где-то в БД есть список пользователей, которые имеют право на РЕДАКТИРОВАНИЕ.
Т.е. на чтение даём всем, а для предоставления функционала и инструментария редактирования проверяем наличие прав на изменение.
При попытке сохранить документ, также обязательно проверяем разрешено ли пользователю, от имени которого приходит запрос на сохранение, это делать - т.е. есть ли он в списке, о котором я говорил в первом абзаце.