Всем доброго дня!
Прочитал документацию на оф. сайте Yii2 по RESTful API, пошерстил гугл, но так и не нашёл решения.
Ограничить доступ к редактированию и удалению чужих записей можно через переопределение checkAccess, например:
public function checkAccess($action, $model = null, $params = [])
{
if ($action === 'update' || $action === 'delete') {
if ($model->createdBy !== \Yii::$app->user->id)
throw new \yii\web\ForbiddenHttpException(sprintf('You can only %s lease that you\'ve created.', $action));
}
}
Но при этом ничто не мешает пользователю сформировать запрос вроде
GET /api/posts или даже
GET /api/posts/1 и просмотреть чужие/ую запись.
Как бы его ограничить, при необходимости добавив условие
->where(['createdBy' => \Yii::$app->user->id])?