Мы разработали приложение, и нам необходимо реализовать контроль разрешений, что означает, что кто-то может искать только определенные записи в базе данных:
- сотрудники могут искать только свои записи.
- руководитель может искать записи своего подчиненного.
- супервайзер может увидеть кнопку «одобрить», чтобы подтвердить заявку
- пока сотрудники могут только подать заявку.
Я знаю безопасность пружин, но на самом деле, как мы можем использовать защиту пружин для реализации вышеуказанной функции?
Мы можем реализовать управление разрешениями с помощью SQL, что означает сначала выбрать его роль, а затем выбрать все записи его подчиненного следующим образом:
select * from table where staffid in (.......)
Но этот метод кажется слишком грубым и сложным в обслуживании. Таким образом, мой вопрос: есть ли какие-то рамки и практика, которые мы можем использовать для реализации механизма контроля приличных разрешений? Как реализовать контроль разрешений в вашем приложении?