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. Завантаження файлів
Недавні записи
- CRSF to PWM
- U-FOC PC Monitor для Chrome browser
- Фільтрація Back-EMF. Безсенсорні BLDC мотори
- Text to speech. Українська мова
- LCD Display ST7567S (IIC)
- Розпізнавання мови (Speech recognition)
- Selenium
- Комп'ютерний зір (Computer Vision)
- Деякі думки про точність вимірювань в електроприводі
- Датчики Холла 120/60 градусів
Tags
bluetooth bldc nodemcu tim max1674 eeprom led avr hih-4000 brushless programmator mpu-6050 usart examples smd sensors piezo rs-232 motor html git meteo bme280 gps bkp encoder java-script raspberry-pi websocket esp8266 books solar eb-500 atmega mongodb gpio sms css pwm ethernet pmsm st-link capture dma stm32 watchdog lcd rfid python uart battery dc-dc soldering timer ssd1331 wifi nvic dht11 docker i2c 3d-printer adc bmp280 flash rtc servo barometer remap exti mpx4115a web flask ngnix usb displays foc ssd1306 mpu-9250 options
Архіви