Если менеджер видит кандидатов чужого подразделения, система подбора персонала нарушает границы доступа. Это может касаться резюме, комментариев, зарплатных ожиданий и внутренних оценок.
HR-данные чувствительны. Ошибка прав доступа бьет по доверию сотрудников и кандидатов, даже если данные не ушли наружу.
Коротко: нужно проверить роли, подразделения, фильтры запросов и кеш прав.Почему возникает проблема
Причина может быть в общем SQL-запросе без department_id, неверной роли менеджера, доступе через вакансию, старом кеше или переносе сотрудника между подразделениями.
Что проверить сначала
- какая роль у менеджера
- к каким подразделениям он привязан
- какой фильтр применяется к списку кандидатов
- не дает ли доступ вакансия
- не кешируются ли старые права
Как я решаю такую задачу
Я проверяю права не только в интерфейсе, но и на уровне backend-запросов.
- воспроизвожу доступ под тестовым менеджером
- проверяю SQL и API-фильтры
- исправляю модель ролей
- очищаю или перестраиваю кеш прав
- тестирую разные подразделения и роли
Что подготовить для оценки
- ссылку на страницу, панель или систему
- что именно должно происходить в норме
- пример ошибки или скриншот
- когда проблема появилась
- тестовый доступ без лишних прав, если он нужен
Каким должен быть результат
Менеджер должен видеть только тех кандидатов и вакансии, которые разрешены его ролью и подразделением.
Чего лучше не делать
Не скрывайте чужих кандидатов только CSS-ом в интерфейсе. Ограничение должно быть на backend-уровне.
FAQ
Можно ли исправить без полной переделки?
Чаще всего да. Я сначала ищу точную причину сбоя и предлагаю минимальную правку, которая не ломает рабочую часть проекта.
Что нужно прислать для оценки?
Нужны ссылка или описание системы, пример ошибки, время появления проблемы и доступ к той части, где можно безопасно проверить причину.
Как понять, что задача решена?
Должен быть повторяемый тест: до правки ошибка воспроизводится, после правки сценарий проходит стабильно и результат можно проверить без догадок.
Нужна похожая задача?
Напишите в Telegram @rabotator_support или оставьте заявку на сайте. Пришлите ссылку, пример ошибки и коротко опишите, как должно работать. Я посмотрю задачу, предложу план и скажу, какие доступы понадобятся.
Итог
Права в HRM нужно проверять строго: роль, подразделение, вакансия, SQL/API и кеш доступа.