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