Имя: Пароль:
1C
1С v8
RLS: выбираемые поля
0 McCoy
 
23.10.11
21:51
В документации по 1С v8 сказано следующее:
5.5.4.8. Ограничение доступа к данным

Настройка ограничений прав выполняется ... на уровне отдельных полей и записей. Такие объекты в списке прав содержат права Чтение, Добавление, Изменение, Удаление... Список состоит из двух колонок. В первой указывается поле или Прочие поля, а во второй — условия ограничения.

...

Для каждого ограничения по праву Чтение допускается выбор поля. Выбор поля означает, что в выборке запроса будут присутствовать только данные, в которых по указанному полю будет удовлетворяться условие (проверка производится только по данному полю).

Условие Прочие поля означает, что проверка выполнения условия будет производиться по каждому полю, и, если условие выполняется, данные выбираются.

Никак не возьму в толк, что дает выбор полей. О каком запросе идет речь? Об итоговой выборке из SQL после наложения ограничения? Кто нибудь может мне помочь "расшифровать" этот текст?
1 maxx079
 
24.10.11
09:22
смотри, как сделано в типовых

обычно условие на чтение документа/справочника - две записи:
1: <Прочие поля>  = какое-то условие
2: Ссылка, Номер, Дата ... = нет условия

условие 1 означает, что получить доступ к объекту в целом (в том числе увидеть его в списках и в реквизитах других объектов) можно только если выполняется заданное условие

но если пользователь откроет другой объект (справочник, документ), где данный объект представлен в виде реквизита, то вместо ссылки там будет написано "Объект не найден <....>"
вот чтобы в данной ситуации пользователь увидел нормальную надпись, и делается условие 2 - исключение на часть полей
т.е. пользователь его открыть все равно не сможет (нет прав), но увидит нормальный текст, а не ошибку

аналогичным образом это работает в запросах - для недоступных объектов поля из условия 2 можно получить через точку (но только в запросе, в обычном языке выдаст ошибку)
2 McCoy
 
24.10.11
09:41
Спасибо огромное, maxx079, за развернутый ответ!
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.