PPE 5 : Service web et site
08/10/2020
Projets Personnalisés Encadrés 5
Groupe 1
BTS SIO 2
PPE 5 : Service Web et site 2
PPE 5 : Service web et site
Sommaire
Partie Gestion de projet : -Planification (GANT) ; -Estimation de projet ;
Partie Technique :
-Modification apportées au site et à la base de données ; -Présentation de la sécurisation du serveur web ;
Partie Juridique
-Qualifier juridiquement les informations composant votre base de données. ; -Cette base de données peut-elle être protégée par le droit d’auteur ? Justifier. ;
-Présenter brièvement les principales règles applicables au traitement de ces informations. ;
Bilan :
Justification des écarts (prévisionnel/réalisé)
PPE 5 : Service Web et site 3
Partie Gestion de projet :
Présentation du groupe :
Groupe 1
SLAM
VIRAPIN KEMMA Florian
JANOLAT Yanick
RIVIERE Julien SISR COINDEVEL Bryan
ZITTE Fabien
Planification GANT :
Diagramme de GANT :
PPE 5 : Service Web et site 4
Estimation de projet : Diagramme des ressoursces :
Diagramme de PERT :
Sachant que GSB paie ses Bac+2 à 1600€ net :
5 personnes dans le groupe (2 SIRR et 3 SLAM)
6 jeudis pour réaliser le projet (du 27/08/2020 au 08/10/2020) soit une durée d’un mois et deux semaines
Coût pour un mois = 1600€ / pour deux semaines = 800€
Donc chaque membre touchera un salaire net de 2400€.
Après concertation du groupe, on s’attribut tous 20% de travail.
Tâche Tâche(s)
antérieure(s) Durée (en
jours) Nombre de
personnes Charge (en j/h)
A -- 1 3 3
B -- 1 3 3
C B 2 2 4
D B 1 1 1
E D 3 3 9
F E 1 1 1
G B 1 1 1
H G 2 2 4
I H 2 1 2
J E 1 1 1
K E 1 1 1
L E 1 1 1
PPE 5 : Service Web et site 5
Partie Technique :
Modification de la base de données :
Puis j’ai rajouté ‘idRole’ dans la table ‘visiteur’ en mettant : ‘idRole’ clé étrangère de la table ‘visiteur’
en référence à ‘id’ de la table ‘role’.
Pour pouvoir prendre en compte, la connexion du comptable sur le site nous avons crée une nouvelle table
« role » où « id » est auto-
incrémenté et on définit le
libelle(médical, comptable).
PPE 5 : Service Web et site 6
Cas d’utilisation – se connecter (visiteur médical ou comptable) :
Ce contrôleur (controleurs/c_connexion.php) permet d’afficher un formulaire de connexion (vues/v_connexion.php) où l’utilisateur peut saisir son login et son mot de passe afin de se connecter, soit en tant que visiteur médical ou soit en tant que comptable.
La solution qu’on a décidé de faire pour que le système contrôle les informations de
connexion, et informe que le profil Visiteur ou Comptable est activée.
C’est de faire une condition si qui vérifie si l’id du visiteur est égale à l’id du visiteur médical ou du comptable.
Et si c’est l’id du visiteur médical, on affiche la vue sommaire et accueil.
Et si c’est l’id du comptable, on affiche la vue comptable et accueil.
La vue connexion.php (vues/v_connexion.php)
Fonction connecter Enregistre dans une variable
Session les infos d'un visiteur $id, $nom, $prenom et le $role_id
PPE 5 : Service Web et site 7
Cas d’utilisation – Renseigner fiche de frais (visiteur médical) : Le contrôleurs (controleurs/c_gererFrais.php) :
Ce contrôleur nous permet le pilotage de la demande de mise à jour des frais, création des frais hors forfait, suppression des frais.
Cette méthode met à jour la table ‘lignefraisforfait’ pour un visiteur et un mois donnée.
PPE 5 : Service Web et site 8
Cette méthode permet de créer un nouveau frais hors forfait pour un visiteur et un mois donnée.
Cette méthode permet de supprimer une ligne de frais hors forfait dans la base de donnée :
Cette fonction permet de valider les infos de fiche frais.
PPE 5 : Service Web et site 9
Cas d’utilisation – Consulter mes fiches de frais (visiteur médical) : Le contrôleurs (controleurs/c_etatFrais.php) :
Ce contrôleur nous permet de consulter les fiches de frais du visiteur.
Cette méthode permet de récupérer tous les mois contenant une fiche pour un utilisateur
donné.
PPE 5 : Service Web et site 10
Ces trois méthodes permettent toutes les informations/frais sur la fiche souhaiter.
Nous récupérons le mois sélectionné dans l’input, puis l’utilisateur demande les frais forfaitisées et les frais HF et d’autres informations… Ensuite nous affichons la vue
(vue/v_etatFrais.php)
PPE 5 : Service Web et site 11
Cas d’utilisation – Valider fiche de frais (comptable) : Dans le contrôleur (controleurs/c_validerFrais.php) :
Prise en compte du clic sur le bouton Valider de la ligne de frais HF.
Affichage des inputs pour choisir le visiteur médical voulu et le mois.
Affichage de la fiche et appel de la méthode getLesFraisHorsForfait(),ge tLesFraisForfait,
getLesInfosFicheFrais
PPE 5 : Service Web et site 12
Prise en compte du clic sur le bouton valider et appel de la méthode majFraisForfait()
Prise en compte du clic sur le bouton supprimer de la ligne de frais HF voulu.
PPE 5 : Service Web et site 13
Cas d’utilisation – Suivre le paiement fiche de frais (comptable) : Dans le contrôleur (controleurs/c_suiviFrais.php) :
Affichage de l’input pour choisir l’utilisateur voulu
Affichage de la fiche frais qui permet suivre le paiement du visiteur médical
PPE 5 : Service Web et site 14
Présentation de la sécurisation du serveur web :
A- Mise en place du DSN :Renommer la machine selon le cahier des charges : « INTRALB1 »
Voici la commande : « nano /etc/hostname »Configuration de l’adresse IP en mode statique :
Pour donner une configuration IP statique à notre serveur nous accédons au fichier de configuration grâce à la commande suivante :
Puis passons à la configuration de celui-ci en modifier et ajouter la nouvelle configuration IP.
La passerelle par défaut qui est l’adresse ‘’172.18.153.248’’ est une connexion via VPN pour pouvoir accéder à distance le serveur.
Relancer la carte réseau avec la commande « service networking restart ».
Passons à l’installation de bind9 et procédons à la configuration :
Ajoutons les zones de recherches dans le fichier ‘’named.conf.local’’ à l’aide de la commande « nano /etc/bind/named.conf.local ». Pour de ce fait nous avons trois zones à ajouter.
PPE 5 : Service Web et site 15 Modifions le fichier « /etc/resolv.conf », qui indique quels serveurs de
nom utiliser.
Configuration des fichiers de zones de recherche (directe/inverse).
Petit rappel précédemment nous avons précisé que nous disposons trois zones directe. Alors à l’aide de la commande « nano /var/cache/bind » ce chemin est très important pour avoir un DNS propre où les zones directes sont stockées ici tout comme la zone inverse.
Voici les trois zones directes de chaque domaine :
Pour accéder à la zone directe à l’aide de la commande en étant dans la racine « cd /var/cache/bind » et ensuite faite la commande « nano db. (Zone rechercher) ».
‘’nano db.swiss-galaxy1.com’’ :
‘’nano db. swiss-galaxy1-france.fr’’ :
‘’nano db. swiss-galaxy1-europe.eu’’ :
PPE 5 : Service Web et site 16 Pour terminer la configuration, redémarré le service DNS à l’aide la commande «
service bind9 restart ».
Test du serveur DNS
Nous allons utiliser la commande « ping » pour effectuer un test de configuration du DNS.
Pour trouver l’adresse IP d’un hôte spécifique ou le nom de domaine d’une adresse IP spécifique à l’aide de la commande « nslookup ».
Pour avoir plus d’information sur le résolveur de DNS à l’aide de la commande « dig ».
PPE 5 : Service Web et site 17 B- Création des compte utilisateur :
Chaque compte d’utilisateur possède un nom de domaine, pour cela on utilise la commande « adduser » suivis du (nom d’utilisateur).
Voici les comptes associés au nom de domaine :
Websg1com : www.swiss-galaxy1.com Websg1fr : www.swiss-galaxy1-france.fr Websg1eu : www.swiss-galaxy1-europe.eu
Chacun d’entre eux auront des droits respectifs c’est-à-dire un utilisateur ne pourra en aucun cas accéder au domaine d’autre utilisateur.
C- Mise en place de HTTP/HTTPS :
Nous allons mettre en place le service « HHTPS » qui va servir à sécuriser les sites web, grâce un certificat.
Nous installons le paquet « OpenSSL » puis nous allons générer un certificat dans la configuration d’OpenSSL.
Puis nous allons créer des VirtualHosts dans chacune des zones que nous avons créées auparavant. Cela se fait dans la config « d’Apache ».
Pour la configuration des VirtualHosts la commande suivante est : « cd
/etc/apache2/sites - available/ » suite à cette commande faire un « ls » pour voir les fichiers concerner.
Avec la commande « nano swiss-galaxy1.com.conf » puis nous ajoutons les VirtualHosts.
PPE 5 : Service Web et site 18 Puis le VirtualHosts « HTTPS » port « 443 ».
Attention pour faire cette manipulation à ne pas oublier de désactiver chaque site à l’aide de la commande : « a2dissite » suivit du site concerner. Et ensuite une fois la configuration dans le VirtualHosts activer le site avec cette commande : « a2ensite » et puis une fois fait, faite ceci :
« openssl req -new -x509 -days 365 -nodes -out /etc/ssl/certs/swiss-galaxy1.com.crt - keyout /etc/ssl/private/swiss galaxy1.com.key » cette commande a pour but générer un certificat et une clé pour chaque site.
Voici les deux autres VirtualHosts :
« nano swiss-galaxy1-france.fr.conf »
PPE 5 : Service Web et site 19
« nano swiss-galaxy1-europe.eu.conf »
D- Mise en place FTP/FTPS :
Nous allons mettre en place le FTP/FTPS. Le protocole FTP (File Transfer
Protocol) est un protocole de communication destiné au partage de fichiers sur un réseau TCP/IP. Cela va permettre de transférer le site web des développeurs sur le serveur web.
Pour cela on va commencer à installer les services ftps qui sont proftpd pour le serveur FTP et openssl pour la sécurité.
Quand l’installation est terminée on va créer les utilisateurs FTP.
La création des utilisateurs est terminée on va faire la configuration de proftpd dans le fichier proftpd.conf avec la commande nano /etc/proftpd/proftpd.conf. Dans le fichier proftpd j’ai simplifié le fichier afin de faire les modifications facilement.
PPE 5 : Service Web et site 20 Le fichier original :
Le fichier modifié :
PPE 5 : Service Web et site 21 Quand j’ai fini de modifié ce fichier, j’ai commencé à générer le certificat SSL pour
sécuriser le FTP. Pour cela je me suis placé dans /etc/proftpd afin de créer le dossier SSL pour mettre de générer le certificat SSL.
Ensuite il faut activer le certificat, pour cela j’ai édité le fichier proftpd.conf.
Après j’ai redémarré le service proftpd et j’ai fait une statue du service.
PPE 5 : Service Web et site 22 Quand tous fonctionnent je suis allé sur Filezilla, après dans le gestionnaire de fichier pour
mettre tous les identifications pour accéder aux dossiers des sites web.
Attention : Dans le fichier proftpd.conf il faut bloquer la remonter de dossier pour que les utilisateurs reste dans le dossier www.
PPE 5 : Service Web et site 23
Partie Juridique
Qualifier juridiquement les informations composant votre base de données.
En droit, une base de données est, selon l’article L112-3 du code de la Propriété intellectuelle, un « recueil d’œuvres, de données ou d'autres éléments indépendants, disposés de manière systématique ou méthodique, et individuellement accessibles par des moyens électroniques ou par tout autre moyen. ».
Une base de données requiert :
- un regroupement d’informations portant sur un même thème (données, photos, livres, …).
- une structure organisée.
- une possibilité d’extraction d’un élément isolé.
Dans le cadre de notre projet, les informations stockées dans la base de données sont des informations à caractère personnelles.
Cette base de données peut-elle être protégée par le droit d'auteur ? Justifier.
Une base de données ne peut être directement protégée.
En effet, la Loi ne peut protéger que la structure d’une base de données et selon un et un seul critère. Ce dernier est l’originalité suffisante des éléments tels que le choix des matières, leurs dispositions et l’apport subjectif et personnel de l’auteur.
La base de donnée qui nous a été fournie et que nous avons ensuite modifiée est sujet à cette protection car la disposition des matières est spécifique à notre façon de travailler.
Pour authentifier cela nous pouvons attester d’investissements matériels et humains substantiels.
Présenter brièvement les principales règles applicables au traitement de ces informations.
Selon le site internet de la CNIL et le Règlement général sur la protection des données (RGPD, règlement européen 2016/679). Il en découle des règles applicables au traitement des informations.
Premièrement on peut noter les principes relatifs au traitement des données à caractère personnel : - elles doivent être traitées de manière licite, loyale et transparente au regard de la personne concernée.
- elles doivent être adéquates, pertinentes et limitées aux finalités du traitement.
- elles doivent être exactes et tenues à jour.
- elles doivent permettre l’identification des personnes concernées pendant une durée n’excédant pas celle des finalités.
- elles doivent être traités de façon à garantir leur sécurité.
Ensuite, un traitement n’est licite que si certaines conditions sont remplies.
On peut citer :
- le consentement de la personne concernée.
- le traitement est nécessaire à l'exécution d'un contrat auquel la personne concernée est partie.
- le traitement est nécessaire au respect d'une obligation légale.
- le traitement est nécessaire à la sauvegarde des intérêts vitaux de la personne concernée ou d'une autre personne physique.
- le traitement est nécessaire à l'exécution d'une mission d'intérêt public ou relevant de l'exercice de l'autorité publique dont est investi le responsable du traitement.
- le traitement est nécessaire aux fins des intérêts légitimes poursuivis par le responsable du traitement.
PPE 5 : Service Web et site 24
Bilan :