Javascript-форум (https://javascript.ru/forum/)
-   Firefox/Mozilla (https://javascript.ru/forum/css-html-firefox-mizilla/)
-   -   Как ограничить перемещение пользователя по личному кабинету? (https://javascript.ru/forum/css-html-firefox-mizilla/78918-kak-ogranichit-peremeshhenie-polzovatelya-po-lichnomu-kabinetu.html)

srg123 22.11.2019 12:51

Как ограничить перемещение пользователя по личному кабинету?
 
Пожалуйста подскажите решение или "где спросить"?
Задача: ограничить перемещение пользователя по личному кабинету вебсайта. Доступ к коду только тот, что предоставляет вебсайт.
Пример: торговля через сайт. Есть доступ к торговым операциям, но нет доступа к личным данным или "выводу денег". Т.е. я провожу авторизацию в лич.каб., запускаю "программу", после чего у оператора есть возможность осуществлять торговые операции, но нет возможности перейти в другие разделы личного кабинета
Пояснение:
условная структура личного кабинета
три раздела
http://site.ru/торговля/....
http://site.ru/лич.данные/....
http://site.ru/вывод-ввод/....
Если http://site.ru/торговля/ меняется на другое, происходит выход из личного кабинета

PS пример условный, требуется защита от "простого любопытства"

laimas 22.11.2019 13:05

Определите права, в базе это удобно делать набором типа SET. При запросах страниц/раздела кабинета проверяются права пользователя с правами доступа запрашиваемого раздела и разрешается вход, если разрешен.

srg123 22.11.2019 13:10

Это можно сделать запустив скрипт на уже исполняемой странице?
PS Спасибо! извените, не программист :(

laimas 22.11.2019 13:23

Цитата:

Сообщение от srg123
Это можно сделать запустив скрипт на уже исполняемой странице?

Это не только скрипт нужен, нужны и определения, а добавить это в имеющийся проект конечно можно. Тип SET, это битовое представление множества. Пусть в базе определены два права доступа: администратор и пользователь. В базе это поле типа SET будет описано так:

Администратор
Пользователь

а внутреннее представление будет будет иметь такие значения:

1 Администратор
2 Пользователь

В базе же определяются и права любых разделов сайта. Например, пусть Личный кабинет имеет разделы А, В и С. В базе для них установили права доступа для:

А - Администратор - числовое значение права = 1
В - Администратор, Пользователь - числовое значение права = 3
С - Администратор, Пользователь - числовое значение права = 3

описываемые также полем типа SET. Если при запросе пользователем раздела логическая операция И над правами пользователя и правом доступа к разделу возвращает true, то разрешается доступ к разделу, иначе ...


Часовой пояс GMT +3, время: 23:41.