diff options
Diffstat (limited to 'appli_3_alpha_old/doc/README.html')
-rw-r--r-- | appli_3_alpha_old/doc/README.html | 422 |
1 files changed, 0 insertions, 422 deletions
diff --git a/appli_3_alpha_old/doc/README.html b/appli_3_alpha_old/doc/README.html deleted file mode 100644 index 476a176..0000000 --- a/appli_3_alpha_old/doc/README.html +++ /dev/null @@ -1,422 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" - "http://www.w3.org/TR/html4/loose.dtd"> -<html lang="fr" > -<head><title>AWOR - Fichier Lisez-moi de l’administrateur</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/mn.html)"> -<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/mn.html)"> -<!-- html --> -<meta name="src" content="README.tex"> -<meta name="date" content="2007-03-11 15:56:00"> -<link rel="stylesheet" type="text/css" href="README.css"> -</head><body -> - <div class="maketitle"> - - - -<h2 class="titleHead">AWOR - Fichier Lisez-moi de l’administrateur</h2> -<div class="author" ></div><br /> -<div class="date" ><span -class="cmr-12">11 mars 2007</span></div> - </div> - <h3 class="sectionHead"><span class="titlemark">1 </span> <a - id="x1-10001"></a>Compatibilité</h3> -<!--l. 32--><p class="noindent">Cette application peut-être utilisée sur un serveur fonctionnant avec Apache, -MySQL(<span -class="cmmi-10">></span>=4) et PHP (<span -class="cmmi-10">></span>=4). -<!--l. 36--><p class="noindent"><span class="paragraphHead"><a - id="x1-20001"></a><span -class="cmbx-10">PHP</span></span> - L’application ne nécessite pas de configuration de PHP particulière. Elle -fonctionne quelque soit la valeur du paramètre de configuration register_globals, -utilise les sessions via les fonctions introduites en PHP4. L’application fonctionne -quelque soit la verbosité des affichages d’erreur et de warning PHP, car nous avons -travaillé à éliminer tous les messages <span -class="lasy-10">﹤﹤</span> E_NOTICE <span -class="lasy-10">﹥﹥</span> PHP qui surviennent par -exemple lors d’une comparaison avec une variable non-initialisée. -<!--l. 46--><p class="indent"> Les scripts PHP n’accèdent pas en écriture au système de fichier, sauf pour -l’upload de fichiers. Le dossier <span -class="lasy-10">﹤﹤</span> fichiers <span -class="lasy-10">﹥﹥</span> doit être accessible en écriture -par les scripts PHP sans quoi la fonctionnalité d’échange de fichier serait -inutilisable. -<!--l. 52--><p class="noindent"><span class="paragraphHead"><a - id="x1-30001"></a><span -class="cmbx-10">MySQL</span></span> - Les scripts PHP ne modifient pas structurellement la base de donnée -MySQL, il suffit donc d’un compte permettant les instructions SELECT, -INSERT, UPDATE, DELETE sur les tables de l’application. Pour indiquer à -l’application quel compte MySQL utiliser, veuillez vous reporter à la section -<a -href="#x1-70003.2">3.2<!--tex4ht:ref: sub:Initialisation-de-la-bd --></a>. - -<!--l. 61--><p class="noindent"> - <h3 class="sectionHead"><span class="titlemark">2 </span> <a - id="x1-40002"></a>Sécurité</h3> -<!--l. 63--><p class="noindent">Cette application a été développée en gardant toujours à l’esprit les problèmes de -sécurités. Nous ne pouvons évidemment pas la garantir failles ni bugs, mais nous -sommes fixé des règles de programmation pour éviter les failles les plus courantes. -Toutes les données issue de l’utilisateur lors des traitements des pages web sont -traitées pour éviter des problèmes d’insertion de code dans les requetes SQL. -L’authentification des utilisateurs est systématique, vérifiée à chaque page et repose -sur le système des sessions PHP. En revanche, il faut noter que le formulaire -d’authentification n’est pas protégé contre l’usurpation de mots de passe car les -contraintes données dans le cahier des charges ne le permettent pas, dû -moins, il n’est pas possible d’utiliser un cryptage efficace (assymétrique) -sans modifier le système d’authentification déléguée et sans utiliser une -configuration de serveur Web spécifique. Considérez, pour résoudre ce problème, -l’emploi sur serveur web sécurisé (HTTPS) et l’utilisation d’une liaison entre -le serveur web et le serveur d’authentification au travers d’un réseau de -confiance. -<!--l. 82--><p class="noindent"> - <h3 class="sectionHead"><span class="titlemark">3 </span> <a - id="x1-50003"></a>Installation</h3> -<!--l. 87--><p class="noindent"> - <h4 class="subsectionHead"><span class="titlemark">3.1 </span> <a - id="x1-60003.1"></a>Paramètres de configuration</h4> -<!--l. 89--><p class="noindent">Cette application comporte deux fichiers de configuration qui sont dans le dossier -<span -class="lasy-10">﹤﹤</span>include <span -class="lasy-10">﹥﹥</span>. Les fichiers existent dans la version distribuée et ont pour but de servir -de modèle. -<!--l. 93--><p class="indent"> - <dl class="description"><dt class="description"> -<span -class="cmbx-10">connect.inc.php</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">ce fichier contient les coordonnées du serveur MySQL, de - l’utilisateur SQL et de la base que l’application utilisera. - </dd><dt class="description"> -<span -class="cmbx-10">config.inc.php</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">ce fichier contient tout le reste de la configuration de - l’application. Le fichier est un script PHP qui initialise un tableau - multi-dimentionnel. Ce choix à été fait par commodité, et pour permette - de bien hiérarchiser les information, en revanche, la syntaxe est fourbe... - N’oubliez pas de virgule<span class="frenchb-thinspace"> </span>! Toutes les constantes sont décrites ci-dessous. - <!--l. 103--><p class="noindent"> - <dl class="description"><dt class="description"> - <span -class="cmbx-10">$adminMail</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">adresse e-mail de l’administrateur. Affichée à l’utilisateur - lorsque qu’une erreur interne à l’application s’est produite. - - </dd><dt class="description"> - <span -class="cmbx-10">$automatedMail</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">adresse e-mail de réponse des courriels envoyés - automatiquement par l’application. - </dd><dt class="description"> - <span -class="cmbx-10">AUTH</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Paramètres d’authentification - <!--l. 111--><p class="noindent"> - <dl class="description"><dt class="description"> - <span -class="cmbx-10">POP</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Paramètres pour les serveurs mail POP - <!--l. 114--><p class="noindent"> - <dl class="description"><dt class="description"> - <span -class="cmbx-10">SERVERS</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Chaque élément de ce tableau à pour clef le nom - de domaine du fournisseur de service de courriel ( partie - suivant le @ dans une adresse e-mail) à pour valeur un - tableau associatif de la forme suivante - <!--l. 120--><p class="noindent"> - <dl class="description"><dt class="description"> - <span -class="cmbx-10">subdomain</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">adresse complete du serveur offrant le service - POP - </dd><dt class="description"> - <span -class="cmbx-10">port</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">numéro de port TCP utilisé pour se connecter au - service POP - </dd><dt class="description"> - <span -class="cmbx-10">username</span><span -class="cmbx-10">_is</span><span -class="cmbx-10">_full</span><span -class="cmbx-10">_mail</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Booléen (true ou false) indicant - si le nom d’utilisateur à utiliser pour l’authentification - est l’adresse e-mail complète. C’est utile pour les serveurs - POP gérant des adresses email sur plusieurs domaines - (comme wanadoo / orange au moment où j’écris ce - document)</dd></dl> - </dd></dl> - </dd><dt class="description"> - <span -class="cmbx-10">bypass</span><span -class="cmbx-10">_if</span><span -class="cmbx-10">_local</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Booléen indiquant si l’authentification doit - être outrepassée si la connexion s’effectue depuis le serveur - lui-même.</dd></dl> - </dd><dt class="description"> - <span -class="cmbx-10">CSS</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Paramètres des styles de pages - <!--l. 137--><p class="noindent"> - <dl class="description"><dt class="description"> - <span -class="cmbx-10">CHOOSER</span><span -class="cmbx-10">_LIST</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Ce tableau associatif contient la liste des - styles CSS à utiliser. Les clefs sont les libellés des thèmes - à afficher et les valeurs sont les noms des fichiers CSS - correspondants, sans chemin, ni extension.</dd></dl> - </dd><dt class="description"> - <span -class="cmbx-10">MAIL</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">  - <!--l. 145--><p class="noindent"> - - <dl class="description"><dt class="description"> - <span -class="cmbx-10">TEMPLATES</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Ce tableau contient des tableaux associatifs dont - les clefs seront utilisées dans les passages de paramètres HTML, - et contiennent des sous-tableaux de la forme suivante<span class="frenchb-nbsp"> </span>: - <!--l. 150--><p class="noindent"> - <dl class="description"><dt class="description"> - <span -class="cmbx-10">caption</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Intitulé qui sera affiché à l’utilisateur - </dd><dt class="description"> - <span -class="cmbx-10">tpl</span><span -class="cmbx-10">_file</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Nom du fichier (avec l’extension PHP) contenant le - modèle.</dd></dl> - </dd></dl> - </dd><dt class="description"> - <span -class="cmbx-10">SUPERUSERS</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Ce tableau contient la liste des login des super-utilisateurs - (ceux qui ont le droit de supprimer des réunions) - </dd><dt class="description"> - <span -class="cmbx-10">UPLOAD</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Paramètres concernant l’attachement de fichiers aux - réunions - <!--l. 161--><p class="noindent"> - <dl class="description"><dt class="description"> - <span -class="cmbx-10">accepted</span><span -class="cmbx-10">_files</span><span class="frenchb-nbsp"> </span><span -class="cmbx-10">:</span> </dt><dd -class="description">Tableau des extensions qui sont autorisées.</dd></dl> - </dd></dl> - </dd></dl> -<!--l. 167--><p class="noindent"> - <h4 class="subsectionHead"><span class="titlemark">3.2 </span> <a - id="x1-70003.2"></a>Initialisation de la base</h4> -<!--l. 169--><p class="noindent">Tout les fichiers nécessaires sont rangés dans le dossier <span -class="lasy-10">﹤﹤</span> install <span -class="lasy-10">﹥﹥</span>. Vous utiliserez -principalement le fichier <span -class="lasy-10">﹤﹤</span> RAZBase.php <span -class="lasy-10">﹥﹥</span>. Appelé au travers du serveur web, il vous -permettra automatiquement de mettre en place la structure de la base de données, et -optionnellement, d’insérer un jeu d’essai pour tester l’application sur votre serveur. Si -vous ne souhaitez pas utiliser de compte SQL ayant le droit d’altérer la structure -des tables de votre base avec ce script php, vous pouvez exécuter le script -<span -class="lasy-10">﹤﹤</span> base.sql <span -class="lasy-10">﹥﹥</span> avec votre client SQL favori. Le jeu d’essai se trouve dans le fichier -<span -class="lasy-10">﹤﹤</span> jeu_essai.sql <span -class="lasy-10">﹥﹥</span>. -<!--l. 180--><p class="noindent"> - <h3 class="sectionHead"><span class="titlemark">4 </span> <a - id="x1-80004"></a>Maintenance</h3> - -<!--l. 183--><p class="noindent"> - <h4 class="subsectionHead"><span class="titlemark">4.1 </span> <a - id="x1-90004.1"></a>Visualisation des objets et des fichiers</h4> -<!--l. 185--><p class="noindent">Une page d’administration est prévue à cet effet, et elle n’est accessible que par un -<span -class="lasy-10">﹤﹤</span> super-utilisateur <span -class="lasy-10">﹥﹥</span>, c’est à dire un utilisateur consigné dans le fichier de -configuration principal en tant que tel, confère <a -href="#x1-60003.1">3.1<!--tex4ht:ref: sub:Configuration --></a>. -<!--l. 191--><p class="noindent"> - <h4 class="subsectionHead"><span class="titlemark">4.2 </span> <a - id="x1-100004.2"></a>Nettoyage de la base</h4> -<!--l. 193--><p class="noindent">À partir de la page d’administration décrite dans le paragraphe précédent, vous -pouvez aussi purger les fichiers attachés et les objets de la base de données devenus -obsolètes. L’aide contextuelle de cette page vous expliquera comment faire. Il est -vivement conseillé de faire une sauvegarde de la base de données et des fichiers joints -aux réunions avant d’utiliser cet outil car l’erreur de manipulation ou de -programmation est toujours possible... -<!--l. 202--><p class="noindent"> - <h3 class="sectionHead"><span class="titlemark">5 </span> <a - id="x1-110005"></a>Authentification dédiée - Personnalisation</h3> -<!--l. 204--><p class="noindent">AWOR utilise un système d’authentification dédiée de sorte qu’aucun mot de passe -ne soit stocké, et que l’utilisateur n’ait pas besoin d’en retenir un nouveau. -Le code d’authentification à été écrit de manière à être maléable et est -extensible. Le coeur du système d’authentification se trouve dans le fichier -<span -class="lasy-10">﹤﹤</span>auth_dialog.php <span -class="lasy-10">﹥﹥</span>. Vous y trouverez une section commençant par le commentaire -ci-dessous. -<!--l. 212--><p class="noindent"> - <dl class="list1"><dt class="list"> - </dt><dd -class="list"> - <span -class="cmtt-10">/***************************************************************</span> - <!--l. 215--><p class="noindent"><span -class="cmtt-10">**</span><span -class="cmtt-10"> </span><span -class="cmtt-10">Vous</span><span -class="cmtt-10"> </span><span -class="cmtt-10">pouvez</span><span -class="cmtt-10"> </span><span -class="cmtt-10">ajouter</span><span -class="cmtt-10"> </span><span -class="cmtt-10">d’autres</span><span -class="cmtt-10"> </span><span -class="cmtt-10">mode</span><span -class="cmtt-10"> </span><span -class="cmtt-10">d’authentification</span><span -class="cmtt-10"> </span><span -class="cmtt-10">ici</span><span -class="cmtt-10"> </span><span -class="cmtt-10">!</span><span -class="cmtt-10"> </span><span -class="cmtt-10">**</span> - <!--l. 217--><p class="noindent"><span -class="cmtt-10">***************************************************************/</span></dd></dl> -<!--l. 220--><p class="noindent">Comme l’indique ce commentaire, vous pourrez ajouter à cet endroit une portion -de code pour utiliser un autre service d’authentification. La syntaxe est la -suivante<span class="frenchb-nbsp"> </span>: -<!--l. 224--><p class="noindent"> - <dl class="list1"><dt class="list"> - </dt><dd -class="list"> - <span -class="cmtt-10">case</span><span -class="cmtt-10"> </span><span -class="cmtt-10">’<nom</span><span -class="cmtt-10">_auth>’</span><span class="frenchb-nbsp"> </span><span -class="cmtt-10">:</span> - <!--l. 227--><p class="noindent"><span -class="cmtt-10">/*</span><span -class="cmtt-10"> </span><span -class="cmtt-10">Eventuellement</span><span -class="cmtt-10"> </span><span -class="cmtt-10">du</span><span -class="cmtt-10"> </span><span -class="cmtt-10">code</span><span -class="cmtt-10"> </span><span -class="cmtt-10">pr</span><span -class="cmtt-10">él</span><span -class="cmtt-10">éminaire</span><span -class="cmtt-10"> </span><span -class="cmtt-10">*/</span> - <!--l. 230--><p class="noindent"><span -class="cmtt-10">$auth</span><span -class="cmtt-10">_is</span><span -class="cmtt-10">_ok=<fonction</span><span -class="cmtt-10">_ou</span><span -class="cmtt-10">_variable</span><span -class="cmtt-10">_authentification>;</span> - <!--l. 232--><p class="noindent"><span -class="cmtt-10">if</span><span -class="cmtt-10"> </span><span -class="cmtt-10">(</span><span -class="cmtt-10"> </span><span -class="cmtt-10">!</span><span -class="cmtt-10"> </span><span -class="cmtt-10">$auth</span><span -class="cmtt-10">_is</span><span -class="cmtt-10">_ok</span><span -class="cmtt-10"> </span><span -class="cmtt-10">)</span> - - <!--l. 234--><p class="noindent"><span -class="cmsy-10">{</span><span -class="cmtt-10"> </span><span -class="cmtt-10">//</span><span -class="cmtt-10"> </span><span -class="cmtt-10">On</span><span -class="cmtt-10"> </span><span -class="cmtt-10">ex</span><span -class="cmtt-10">écute</span><span -class="cmtt-10"> </span><span -class="cmtt-10">la</span><span -class="cmtt-10"> </span><span -class="cmtt-10">ligne</span><span -class="cmtt-10"> </span><span -class="cmtt-10">ci-dessous</span><span -class="cmtt-10"> </span><span -class="cmtt-10">que</span><span -class="cmtt-10"> </span><span -class="cmtt-10">si</span><span -class="cmtt-10"> </span><span -class="cmtt-10">l’authentificaiton</span><span -class="cmtt-10"> </span><span -class="cmtt-10">à</span><span -class="cmtt-10"> </span><span -class="cmtt-10">échou</span><span -class="cmtt-10">ée</span> - <!--l. 236--><p class="noindent"><span -class="cmtt-10">$errmsg=<fonction</span><span -class="cmtt-10">_ou</span><span -class="cmtt-10">_chaine</span><span -class="cmtt-10">_explicant</span><span -class="cmtt-10">_l</span><span -class="cmtt-10">_erreur</span><span -class="cmtt-10">_d</span><span -class="cmtt-10">_authentification>;</span> - <!--l. 238--><p class="noindent"><span -class="cmsy-10">}</span> - <!--l. 240--><p class="noindent"><span -class="cmtt-10">break;</span></dd></dl> -<!--l. 242--><p class="noindent">Il vous suffit de remplacer les éléments entre chevrons dans le code ci-dessus et de le -coller dans <span -class="lasy-10">﹤﹤</span>auth_dialog.inc.php<span -class="lasy-10">﹥﹥</span> pour pouvoir utiliser un nouveau mode -d’authentification. Reste à donner à l’utilisateur la capacité de l’utiliser. Vous -devrez encore, d’une part, ajouter dans la base de données le <span -class="cmmi-10"><</span>nom_auth<span -class="cmmi-10">> </span>à -l’énumération du champ <span -class="lasy-10">﹤﹤</span>methodeAuth<span -class="lasy-10">﹥﹥</span> de la table <span -class="lasy-10">﹤﹤</span>Personne<span -class="lasy-10">﹥﹥</span>, et d’autre part -proposer à l’utilisateur d’utiliser ce mode d’authentification en modifiant la page -<span -class="lasy-10">﹤﹤</span>profil.php<span -class="lasy-10">﹥﹥</span>. - -</body></html> - - - |