React и контент в зависимости от типа пользователя
Добрый день, начал изучать react+redux, появился такой вопрос:
Есть некий сайт в котором может быть несколько типов пользователей (админ, менеджер и т.п) и в зависимости от типа авторизованного пользователя ему должны быть доступны разные элементы в интерфейсе. Если с выдачей информации по API довольно просто - на сервере проверяем тип пользователя и если он не тот который нужен, то шлем ошибку. А вот как быть, если например у нас есть компонент со статьей и если тип юзера - админ, то будет доступна кнопка "удалить", а если менеджер то нет? Хранить тип юзера в сторе редакса? не вариант, можно ее поменять через консоль - дыра. До рендера этого компонента делать запрос на сервер с текущими куками и получать типа пользователя и уже после получения ответа рендерить компонент? Сервер на Django, но думаю, что особой разницы какой бэк использовать тут нет. |
Дыра будет вне зависимости от того, что у вас там на клиенте будет. Для проверки полномочий юзера используются токены на сервере. Грубо говоря, если у вас даже не будет пресловутой кнопки удалить, что мешает злоумышленнику просто сделать запрос на удаление из консоли. Реакт - это не универсальное средство, он нужен для облегчения построения интерфейса, а не непробиваемой защиты
|
Цитата:
|
hound,
Цитата:
JWT токены генерируются сервером и сохраняются на клиенте в каком-нибудь хранилище: куки, localStorage, sessionStorage. При инициализации нашего приложения происходит проверка существования токена, и если он есть -- посылается запрос на сервер для проверки его валидности по секретному ключу. Желательно ещё проверять нет ли этого токена в списке запрещенных: истекает срок действия, пользователь заблокирован и т.д.. Более подробно тут https://medium.com/@rajaraodv/securi...ea0#.byuolbn66 и пример https://github.com/joshgeller/react-...t-auth-example |
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
|
Часовой пояс GMT +3, время: 14:57. |