Покажите короткий пример по теме «IDOR» и объясните, что здесь важно.
Что хотят услышать интервьюеры:
Короткий пример по теме IDOR:
Ответ:
<?php if ($order->user_id !== $user->id) { abort(403); } Что важно: код должен быть безопасным, читаемым и соответствовать контракту задачи. Для PHP-разработчика важно объяснить не только «как написать», но и «почему так безопаснее/надежнее».
- проверять право на конкретный ресурс
- не полагаться на скрытый ID
- использовать policies/guards
Типичная ошибка: проверить только факт логина, но не владельца заказа.
На собеседовании: проговорите, какие edge cases вы бы проверили тестами и что бы логировали при ошибке.