Flask & Vue. Авторизація. Приклад№ 2.5
Для спрощення вирішення задачі роздачі прав користувачам їх зазвичай поєднують у групи.
У цьому прикладі я додав табличку GROUPS, у якій створив декілька груп користувачів, і у кожній перелічив список користувачів, які належать до кожної з груп. Логіни користувачів перелічені через кому. Це не найкраще рішення, але для прикладу потягне.
Самі права доступу до різних об'єктів прописані у файлі access.json. Це можна було б зробити і у базі даних, але мені здалося, що JSON буде більш наглядним для прикладу. У файлі access.json прописано які користувачі і які групи можуть виконувати опрації з тими чи іншими даними.
"*" - означає будь-хто з коистувачів, або будь-яка група.
У файлі my_app.py є функція декоратор access_check, саме вона викликає перевірку прав доступу.
Весь функціонал перевірки прав у файлі access.py
Як запустити приклад?
- Завантажити архів з прикладом, розпакувати
- Запустити приклад командою:
абоpython ./my_app.py
python3 ./my_app.py
- У браузері відкрити посилання: http://localhost:5000/
Дивись також:
- Flask & Vue. Приклад# 2.1
- Flask & Vue. Приклад# 2.2 Frontend - Зручна навігація
- Flask & Vue. Приклад# 2.3 Серверна пагінація, пошук, сортування даних
- Flask & Vue. Приклад# 2.4 Проста аутентифікація
- Flask & Vue. Приклад# 2.5 Авторизація
- Flask & Vue. Приклад# 2.6 Кастомні компоненти
- Flask & Vue. Приклад# 2.7 SQLAlchemy, Migrate, Marshmallow, JWT
- Flask & Vue. Використання систем збірки проекту. Webpack
- Flask & Vue. OAuth. Facebook / Google Account
- Flask & Vue. Завантаження файлів
Недавні записи
- LCD Display ST7567S (IIC)
- Розпізнавання мови (Speech recognition)
- Selenium
- Комп'ютерний зір (Computer Vision)
- Деякі думки про точність вимірювань в електроприводі
- Датчики Холла 120/60 градусів
- Модуль драйверів напівмосту IGBT транзисторів
- Драйвер IGBT транзисторів на A316J
- AS5600. Варіант встановлення на BLDC мотор
- DC-DC для IGBT драйверів ізольований 2 W +15 -8 вольт
Tags
battery soldering java-script ngnix adc rs-232 flask esp8266 watchdog web exti solar mongodb rtc sms pwm usart books ethernet smd git websocket meteo css python dc-dc displays led ssd1306 eeprom gpio barometer max1674 mpx4115a brushless motor mpu-6050 timer sensors remap servo bldc atmega pmsm 3d-printer flash encoder examples dma raspberry-pi tim ssd1331 piezo mpu-9250 rfid eb-500 foc bme280 gps nvic dht11 bluetooth hih-4000 stm32 st-link docker uart avr html wifi bmp280 bkp nodemcu options usb lcd programmator i2c capture
Архіви