diff options
author | Ludovic Pouzenc <ludovic@pouzenc.fr> | 2018-07-05 00:28:24 +0200 |
---|---|---|
committer | Ludovic Pouzenc <ludovic@pouzenc.fr> | 2018-07-05 00:28:24 +0200 |
commit | 35a23f6145bb772b9bfa8c8eeb500aa8c02437d3 (patch) | |
tree | 1c999f13ab6c8f02e250c3053557454ce7b6de65 /final/install/READ_ME.lyx | |
parent | ac54f5224d4470de9d8ae088e1338dea52668c9d (diff) | |
download | 2007-AWOR-35a23f6145bb772b9bfa8c8eeb500aa8c02437d3.tar.gz 2007-AWOR-35a23f6145bb772b9bfa8c8eeb500aa8c02437d3.tar.bz2 2007-AWOR-35a23f6145bb772b9bfa8c8eeb500aa8c02437d3.zip |
Version awor_1.0_20070316.tar.bz2
Diffstat (limited to 'final/install/READ_ME.lyx')
-rw-r--r-- | final/install/READ_ME.lyx | 600 |
1 files changed, 600 insertions, 0 deletions
diff --git a/final/install/READ_ME.lyx b/final/install/READ_ME.lyx new file mode 100644 index 0000000..d9e336e --- /dev/null +++ b/final/install/READ_ME.lyx @@ -0,0 +1,600 @@ +#LyX 1.4.3 created this file. For more info see http://www.lyx.org/ +\lyxformat 245 +\begin_document +\begin_header +\textclass article +\language french +\inputencoding auto +\fontscheme times +\graphics default +\paperfontsize default +\spacing single +\papersize a4paper +\use_geometry false +\use_amsmath 1 +\cite_engine basic +\use_bibtopic false +\paperorientation portrait +\leftmargin 1cm +\topmargin 1cm +\rightmargin 1cm +\bottommargin 1cm +\headheight 1cm +\headsep 0cm +\footskip 1cm +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language french +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\end_header + +\begin_body + +\begin_layout Title +AWOR - Fichier Lisez-moi de l'administrateur +\end_layout + +\begin_layout Standard +\begin_inset LatexCommand \tableofcontents{} + +\end_inset + + +\end_layout + +\begin_layout Standard + +\newpage + +\end_layout + +\begin_layout Section +Compatibilité +\end_layout + +\begin_layout Standard +Cette application peut-être utilisée sur un serveur fonctionnant avec Apache, + MySQL(>=4) et PHP (>=4). + +\end_layout + +\begin_layout Paragraph +PHP +\end_layout + +\begin_layout Standard +L'application ne nécessite pas de configuration de PHP particulière. + Elle fonctionne quelle que 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 + +\begin_inset Quotes fld +\end_inset + +E_NOTICE +\begin_inset Quotes frd +\end_inset + + PHP qui surviennent par exemple lors d'une comparaison avec une variable + non-initialisée. +\end_layout + +\begin_layout Standard +Les scripts PHP n'accèdent pas en écriture au système de fichier, sauf pour + l'upload de fichiers. + Le dossier +\begin_inset Quotes fld +\end_inset + +fichiers +\begin_inset Quotes frd +\end_inset + + doit être accessible en écriture par les scripts PHP sans quoi la fonctionnalit +é d'échange de fichier serait inutilisable. +\end_layout + +\begin_layout Paragraph +MySQL +\end_layout + +\begin_layout Standard +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 +\begin_inset LatexCommand \ref{sub:Initialisation-de-la-bd} + +\end_inset + +. +\end_layout + +\begin_layout Section +Sécurité +\end_layout + +\begin_layout Standard +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 issues 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. +\end_layout + +\begin_layout Section +Installation +\end_layout + +\begin_layout Subsection +Dépaquetage des pages PHP +\end_layout + +\begin_layout Standard +L'application est livrée dans une archive de type tarball compressée qui + contient toute l'arborescence et les fichiers PHP nécessaires. + Il suffit de décompresser cette archive en conservant l'arborescence dans + un dossier publié par votre serveur Web. + Les fichiers de configurations sont présent et contiennent des valeurs + d'exemple que vous pourrez adapter à votre situation. +\end_layout + +\begin_layout Subsection +\begin_inset LatexCommand \label{sub:Configuration} + +\end_inset + +Paramètres de configuration +\end_layout + +\begin_layout Standard +Cette application comporte deux fichiers de configuration qui sont dans + le dossier +\begin_inset Quotes fld +\end_inset + +include +\begin_inset Quotes frd +\end_inset + +. + Les fichiers existent dans la version distribuée et ont pour but de servir + de modèle. +\end_layout + +\begin_layout Description +connect.inc.php\InsetSpace ~ +: ce fichier contient les coordonnées du serveur MySQL, de + l'utilisateur SQL et de la base que l'application utilisera. +\end_layout + +\begin_layout Description +config.inc.php\InsetSpace ~ +: ce fichier contient tout le reste de la configuration de l'applica +tion. + 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\SpecialChar \ldots{} + N'oubliez pas de virgule + ! Toutes les constantes sont décrites ci-dessous. +\end_layout + +\begin_deeper +\begin_layout Description +$adminMail\InsetSpace ~ +: adresse e-mail de l'administrateur. + Affichée à l'utilisateur lorsque qu'une erreur interne à l'application + s'est produite. +\end_layout + +\begin_layout Description +$automatedMail\InsetSpace ~ +: adresse e-mail de réponse des courriels envoyés automatiquement + par l'application. +\end_layout + +\begin_layout Description +AUTH\InsetSpace ~ +: Paramètres d'authentification +\end_layout + +\begin_deeper +\begin_layout Description +POP\InsetSpace ~ +: Paramètres pour les serveurs mail POP +\end_layout + +\begin_deeper +\begin_layout Description +SERVERS\InsetSpace ~ +: Chaque élément de ce tableau à pour clef le nom de domaine du fournisse +ur de service de courriel ( partie suivant le @ dans une adresse e-mail) + à pour valeur un tableau associatif de la forme suivante +\end_layout + +\begin_deeper +\begin_layout Description +subdomain\InsetSpace ~ +: adresse complete du serveur offrant le service POP +\end_layout + +\begin_layout Description +port\InsetSpace ~ +: numéro de port TCP utilisé pour se connecter au service POP +\end_layout + +\begin_layout Description +username_is_full_mail\InsetSpace ~ +: 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) +\end_layout + +\end_deeper +\end_deeper +\begin_layout Description +bypass_if_local\InsetSpace ~ +: Booléen indiquant si l'authentification doit être outrepassée + si la connexion s'effectue depuis le serveur lui-même. +\end_layout + +\end_deeper +\begin_layout Description +CSS\InsetSpace ~ +: Paramètres des styles de pages +\end_layout + +\begin_deeper +\begin_layout Description +CHOOSER_LIST\InsetSpace ~ +: 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. +\end_layout + +\end_deeper +\begin_layout Description +MAIL\InsetSpace ~ +: +\end_layout + +\begin_deeper +\begin_layout Description +TEMPLATES\InsetSpace ~ +: Ce tableau contient des tableaux associatifs dont les clefs seront + utilisées dans les passages de paramètres HTML, et contiennent des sous-tableau +x de la forme suivante : +\end_layout + +\begin_deeper +\begin_layout Description +caption\InsetSpace ~ +: Intitulé qui sera affiché à l'utilisateur +\end_layout + +\begin_layout Description +tpl_file\InsetSpace ~ +: Nom du fichier (avec l'extension PHP) contenant le modèle. +\end_layout + +\end_deeper +\end_deeper +\begin_layout Description +SUPERUSERS\InsetSpace ~ +: Ce tableau contient la liste des login des super-utilisateurs + (ceux qui ont le droit de supprimer des réunions) +\end_layout + +\begin_layout Description +UPLOAD\InsetSpace ~ +: Paramètres concernant l'attachement de fichiers aux réunions +\end_layout + +\begin_deeper +\begin_layout Description +accepted_files\InsetSpace ~ +: Tableau des extensions qui sont autorisées. +\end_layout + +\end_deeper +\end_deeper +\begin_layout Subsection +\begin_inset LatexCommand \label{sub:Initialisation-de-la-bd} + +\end_inset + +Initialisation de la base +\end_layout + +\begin_layout Standard +Tous les fichiers nécessaires sont rangés dans le dossier +\begin_inset Quotes fld +\end_inset + +install +\begin_inset Quotes frd +\end_inset + +. + Vous utiliserez principalement le fichier +\begin_inset Quotes fld +\end_inset + +RAZBase.php +\begin_inset Quotes frd +\end_inset + +. + 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 +\begin_inset Quotes fld +\end_inset + +base.sql +\begin_inset Quotes frd +\end_inset + + avec votre client SQL favori. + Le jeu d'essai se trouve dans le fichier +\begin_inset Quotes fld +\end_inset + +jeu_essai.sql +\begin_inset Quotes frd +\end_inset + +. +\end_layout + +\begin_layout Standard +Vous devriez supprimer ce répertoire dès que l'installation sera terminée + car il peut poser des problèmes de sécurité car le fichier +\begin_inset Quotes fld +\end_inset + +RAZBase.php +\begin_inset Quotes frd +\end_inset + + pourrait être lancé par n'importe qui, et les fichiers SQL contienent des + informations sensibles. +\end_layout + +\begin_layout Subsection +Configuration par défaut des comptes +\end_layout + +\begin_layout Standard +Dans le fichier de configuration modèle, un super-utilisateur est configuré + : inglebert@iut-blagnac.fr et le jeu d'essai proposé au paragraphe précédent + permet de créer des utilisateurs, et en particulier inglebert@iut-blagnac.fr. +\end_layout + +\begin_layout Standard +Par défaut, vous pourrez donc vous connecter en tant qu'administrateur avec + ce compte. + Le jeu d'essai met ce compte avec comme mode d'authentification +\begin_inset Quotes fld +\end_inset + +bypass +\begin_inset Quotes frd +\end_inset + +, ce qui signifie qu'aucun mot de passe n'est nécessaire. + Pour utiliser un vrai système d'authentification, connectez-vous avec ce + compte et allez dans la page +\begin_inset Quotes fld +\end_inset + +Mon Profil +\begin_inset Quotes frd +\end_inset + + pour choisir une autre mode d'authentification. +\end_layout + +\begin_layout Section +Maintenance +\end_layout + +\begin_layout Subsection +Visualisation des objets et des fichiers +\end_layout + +\begin_layout Standard +Une page d'administration est prévue à cet effet, et elle n'est accessible + que par un +\begin_inset Quotes fld +\end_inset + +super-utilisateur +\begin_inset Quotes frd +\end_inset + +, c'est à dire un utilisateur consigné dans le fichier de configuration + principal en tant que tel, confère +\begin_inset LatexCommand \ref{sub:Configuration} + +\end_inset + +. +\end_layout + +\begin_layout Subsection +Nettoyage de la base +\end_layout + +\begin_layout Standard +À 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\SpecialChar \ldots{} + +\end_layout + +\begin_layout Section +Authentification dédiée - Personnalisation +\end_layout + +\begin_layout Standard +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 +\begin_inset Quotes fld +\end_inset + +auth_dialog.php +\begin_inset Quotes frd +\end_inset + +. + Vous y trouverez une section commençant par le commentaire ci-dessous. +\end_layout + +\begin_layout LyX-Code + +\lang english +/*************************************************** +\end_layout + +\begin_layout LyX-Code + +\lang english +** Ajouter d'autres mode d'authentification ici ! ** +\end_layout + +\begin_layout LyX-Code + +\lang english +***************************************************/ +\end_layout + +\begin_layout Standard +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 : +\end_layout + +\begin_layout LyX-Code +case '<nom_auth>': +\end_layout + +\begin_layout LyX-Code +/* Eventuellement du code préléminaire */ +\end_layout + +\begin_layout LyX-Code + +\lang english +$auth_is_ok=<fonction_ou_variable_authentification>; +\end_layout + +\begin_layout LyX-Code + +\lang english +if ( ! $auth_is_ok ) +\end_layout + +\begin_layout LyX-Code + +\lang english +{ // Si l'authentificaiton à échouée +\end_layout + +\begin_layout LyX-Code + +\lang english +$errmsg=<fonction_ou_chaine_explicant_l_erreur>; +\end_layout + +\begin_layout LyX-Code + +\lang english +} +\end_layout + +\begin_layout LyX-Code + +\lang english +break; +\end_layout + +\begin_layout Standard + +\lang english +Il vous suffit de remplacer les éléments entre chevrons dans le code ci-dessus + et de le coller dans +\begin_inset Quotes fld +\end_inset + +auth_dialog.inc.php +\begin_inset Quotes frd +\end_inset + + 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 <nom_auth> + à l'énumération du champ +\begin_inset Quotes fld +\end_inset + +methodeAuth +\begin_inset Quotes frd +\end_inset + + de la table +\begin_inset Quotes fld +\end_inset + +Personne +\begin_inset Quotes frd +\end_inset + +, et d'autre part proposer à l'utilisateur d'utiliser ce mode d'authentification + en modifiant la page +\begin_inset Quotes fld +\end_inset + +profil.php +\begin_inset Quotes frd +\end_inset + +. +\end_layout + +\end_body +\end_document |