Installation et package¶
apache -flask partie 1¶
sudo apt install apache2
sudo apt install python3-venv
sudo mkdir /var/www/.venv
sudo chown yves /var/www/.venv
python3 -m venv /var/www/.venv
source /var/www/.venv/bin/activate
#recuperation de la base de l'application
nom = "serveur"
sudo mkdir /var/www/$nom
sudo chown yves /var/www/$nom
cp -r install/libperso /var/www/$nom/
mkdir /var/www/$nom/templates
mkdir /var/www/$nom/static
cp install/templates/index.html
cp install/templates/page_menu_gauche.html
cp install/templates/barre_menu_2.html
admin.html et change.html
cp install/static/w3.css
cp -r install/static/fontawesome-free-6.4.2-web
cp -r install/static/font-awesome.min.css
cp -r install/static/style.css
scp /var/www/test/install/templates/barre_menu_1.html bureau:/var/www/serveur/templates/
Commandes pip¶
#pour lister les dépnedances installées
pip freeze
#pour exporter la liste
pip freeze > requirement.txt
#pour importer la liste
pip install -r requirement.txt
#pip install wheel (??)
#pour l'installation du paquet mysql-connector
#pour flask
pip install flask
#ensuite
# surtout pas celui la : pip install mysql-connector
pip install mysql-connector-python
pip install python-cas
commandes sql¶
Les données sant dans le fichier /etc/serveur/conf.py
CREATE DATABASE IF NOT EXISTS donnees;
USE donnees;
source /opt/sql/tables.sql;
CREATE USER 'sqluser'@'localhost' IDENTIFIED BY 'sqluser';
GRANT ALL PRIVILEGES ON donnees.* TO 'lecteur'@'localhost';
FLUSH PRIVILEGES;
tables utilisées pour la base¶
base : donnees
tables :
bebel0810005R-ent_temp pour les utilisateurs pédagogiques
bebel0810005R-profs pour récupérer la liste des classes et groupes d’un prof
bebel-0810005R-groupes-eleves pour récupérer les groupes auxquels appartiennent les élèves (un groupe par ligne ) contient également les groupes des profs
les routes dans l’appli de base¶
- identification :
 la route login : - vérifie si username est dans session , si oui retourne dirige vers /secure sinon - cherche la présence d’un ticket stocke l’uid dans username rediriger vers secure
la route secure : - vérifie si admin - charge les groupes dans session donnees - charge les menus à partir du login et des groupes - cherche ressource dans session, si ressource est différent de quitter
si ressource est égal à resaece -> retourne la route activites_bp.index
sinon retourne la route session[“ressource”]+”_bp.index”
sinon retourne le template page_menu_gauche avec les données
cas retourne un username
on cherche les groupes dans les tables
- /profile accessible en méthode get :
 si connecté retourne sur secure
sinon propose un lien pour se connecter
- /accueil/<ressource> ou ressource est un blueprint
 protection statique par vérification de la ressource dans une liste
si autorisé, chargé dans la variable de session ressource puis renvoie secure
sinon renvoie sur login
/logout nettoie la session et déconnecte le cas laiise sur l’accueil