Comments 2
Полезная штука. Можно поинтересоваться,
1. Есть ли возможность сделать какие-либо ограничивающие правила, кроме
2. При успешном создании объекта RESTForms возвращает
Спасибо!
1. Есть ли возможность сделать какие-либо ограничивающие правила, кроме
OBJPERMISSIONS
, которые бы не позволили клиентам сделать «слишком много» на сервере? Например, какой-то декларативный механизм, чтобы каждый клиент мог редактировать только свой Package.Test.Client
. Пока что выглядит так, что для такой цели нужно писать свой REST endpoint. Или это уже beyond the scope of RESTForms?2. При успешном создании объекта RESTForms возвращает
{"Id": "101"}
. Всё время спрашиваю себя, почему не {"_id": "101"}
?Спасибо!
- Да, есть несколько подходов:
- Использовать Row-Level Security и коллбэк %OnOpen для контроля SQL и объектного доступа соответствено.
- Переопределить метод
checkObjPermissionStatus
дляPackage.Test.Client
класса — он определяет предоставлять доступ или нет и по умолчанию проверяет наличие C/R/U/D но может быть переопределён для проведения более сложных проверок - Переопределить метод
OnPreDispatch
для контроля доступа - Считать действия над объектом пользователя бизнес-логикой и соответственно реализовывать их отдельно
- Так исторически сложилось.
Sign up to leave a comment.
RESTForms — REST API для ваших классов InterSystems Caché