SimpleRecordSecure
Этот серверный класс содержит методы для работы с записями базы данных с учетом правил контроля доступа (ACL) кон кретного пользователя. Все методы SimpleRecordSecure идентичны методам SimpleRecord, но применяются с учетом правил контроля доступа.
Если пользователь выполняет операцию Создание, Запись или Удаление в базе данных при наличии запрещающих ACL, операция не будет выполнена, а метод getErrors(), вызванный после нее, вернет соответствующую ошибку.
Если пользователь выполняет операцию Чтение из базы данных при наличии запрещающих ACL, данные предоставлены не будут, но метод getErrors() не вернет ошибок.
Поведение системы при наличии запрещающих правил контроля доступа (ACL)
Запрещенное действие | Запрет для записи | Запрет для поля |
---|---|---|
Создание | Если пользователь заполняет запись через скрипт и выполняет метод insert(), то запись не создается. | Если пользователь заполняет поле через скрипт и выполняет метод insert(), то запись создается, но поле пусто или заполн ено значением по умолчанию (если оно предусмотрено). |
Запись | Если пользователь указывает новые значения для полей записи через скрипт и выполняет метод update(), то запись не обновляется. При вызове updateMultiple() записи в выборке, изменение которых запрещено ACL, остаются без изменений, остальные успешно обновляются. | Если пользователь указывает новое значение поля через скрипт и выполняет метод update() / updateMultiple(), то запись обновляется, но значение полей, доступ к которым запрещен, остается без изменений. |
Чтение | Если пользователь запрашивает запись через скрипт, скрытые данные не включаются в ответ. Вся строка ответа пустая. | Если пользователь запрашивает данные поля через скрипт, они не включаются в ответ. Колонка с запрещенным полем пустая. |
Удаление | Если пользователь пытается удалить запись через скрипт и выполняет метод deleteRecord(), то запись остается без изменений. При вызове deleteMultiple(), если в выборке есть хоть одна запись, удаление которой запрещено, ни одна запись не удаляется. | - |