partage calendrier sunbird : accès selon mot de pass[résol

Vous pouvez discuter dans cette catégorie des logiciels et extensions tiers créés à partir des technologies Mozilla.
pom'
Salamandre
Messages : 38
Inscription : 12 mai 2005, 14:30

partage calendrier sunbird : accès selon mot de pass[résol

Message par pom' »

bonjour,
j'ai installé phpicalendar sur un serveur intranet.
je souhaiterais contrôler l'accès aux calendriers par un système de login et mot de passe.
j'ai vu que c'était paramétrable dans config.inc.php, mais je n'y parviens pas.
merci de votre aide.

Edit :
Après moultes tentatives, j'ai un semblant de début de réussite avec l'affichage de la partie authentification. Le seul hic est qu'il n'y a pas de bouton pour valider le login et mot de passe ... :cry:
Dernière modification par pom' le 26 mai 2005, 08:24, modifié 1 fois.
pom'
Salamandre
Messages : 38
Inscription : 12 mai 2005, 14:30

Message par pom' »

p'tit up :cry:
penpen
Gecko
Messages : 64
Inscription : 05 janv. 2005, 12:45

Message par penpen »

Une petite mise en garde d'abord. La technique détaillée dans les autres post marche très bien pour une utilisation personnelle et permet de s'affranchir de l'utilisation d'un serveur webdav en imitant quelques fonctionnalités de celui-ci.
Cependant je pense que la gestion de l'acces en concurence n'est pas du tout gérée. Aussi si pour une usage personnel le fait de modifier le calendrier exactement en meme moment est fortement improbable, cela est bien moins certains sur un réseau intranet avec un nombres d'utilisateur plus conséquent.

Bien que pas encore vraiment courant et/ou répendu, le protocole webdav (successeur potentiel du ftp et bien plus récent) réponds exactement à ce problème, à savoir partager des ressources à accès concurent: un ou plusieur calendriers utilisé par plusieurs utilisateurs par exemple.
Je pense que c'est la solution adaptée pour une utilisation en entreprise.
Cependant je n'ai jamais installé un tel serveur. Je sais qu'il existe une extension à Apache (mod DAV) pour gerer celui-ci. Avec un peu de patience je pense que ce n'est pas vraiment dur à installer/configurer.

Voilà pour l'avertissement...
Sinon pour ta question, j'aimerais en savoir un peu plus
Pour le contrôle d'acces que veux tu faire exactement ?
Controler l'accès pour la consultation web ?
Ou contrôler l'accès avec Sunbird/Calendar ?
Sur un ou plusieurs calendriers ?

Edit: Pour les personnes intéressée voici une liste (à vérifier) de serveur webdav.
Apache 2.0, Subversion, Slide, Tamino WebDAV Server, Exist XML DB, Oracle Internet File System, Microsoft IIS, Exchange, Sharepoint Portal, Xythos WebFile Server, Novell Netware 5.1, Net Publisher, W3C Jigsaw, EPFL WebDAV server, ...
Dernière modification par penpen le 23 mai 2005, 20:32, modifié 1 fois.
pom'
Salamandre
Messages : 38
Inscription : 12 mai 2005, 14:30

Message par pom' »

Cher Penpen,

Je te remercie pour ta réponse.
Je vais tenter de t'expliquer comment notre intranet fonctionne :
Nous avons plusieurs agences reliées par VPN.
Pour l'instant, le serveur intranet est une machine sous windows 98 avec easyphp 1.7 et apache 2.0 en supplément de celui fourni avec easyphp.
J'ai également installé un serveur FTP : TypSoft FTP Serveur.

Le but recherché est le partage de calendriers selon le type de métier des collaborateurs pour une visualistion sans modification.
Si j'opte pour une consultation via pages web, je suis dans l'obligation de "filtrer" les accès afin de ne permettre aux utilisateurs la visualisation des agendas les concernant.
Si j'opte pour un contrôle d'accès via sunbird, je crains que les personnes n'étant autorisées qu'à la consultation ne modifient les agendas consultés.
C'est donc pour cette raison que je préfèrerais une consultation web.

Pour info, j'ai tenté de mettre en place un web_dav sur le pseudo-serveur, sans succès ... Les docs sont toutes dans la langue shakespearienne et surtout orientées linux :oops:

Pour résumer donc, si j'ai un utilisateur A qui fait partie du groupe conseillers, je souhaite qu'il puisse voir les agendas des autres conseillers et qu'il ne puisse pas voir ceux des autres groupes.

C'est un peu tordu, je sais, mais je n'ai pas vraiment le choix :wink:
En te remerciant de ton aide,
Cdlt,
Pom'
penpen
Gecko
Messages : 64
Inscription : 05 janv. 2005, 12:45

Message par penpen »

Effectivement j'ai testé l'option d'identification le bouton valider n'apparait pas... :( Ca marchais avant avec la version 1.1, cela doit être un bug encore non corrigé.

Cependant c'est pas bien grave. On peut aussi utiliser l'identification HTTP (à savoir avec Apache), qui à le merite d'être plutôt sûre.

Premièrement dans le fichier config.inc.php il faut définir les calendriers que tu dois filtrer. Les lignes commencent par $locked_cals. ex:

Code : Tout sélectionner

$locked_cals[] = 'Calendrier1_a_filter';
$locked_cals[] = 'Calendrier2_a_filter';
$locked_cals[] = 'Calendrier3_a_filter';
Ensuite, toujours dans ce même fichier, il faut ajouter les utilisateurs authorisés, et leurs associer un/des calendriers. Les lignes commencent par $apache_map. ex:

Code : Tout sélectionner

$apache_map['utilisateur1'] = array('Calendrier1_a_filter', 'Calendrier2_a_filter');
$apache_map['utilisateur2'] = array('Calendrier2_a_filter', 'Calendrier3_a_filter');
$apache_map['utilisateur3'] = array('Calendrier3_a_filter');
Voilà, c'est tout ce qu'il y a à changer dans ce fichier.

Ensuite passons à la partie identification.
Dans le répertoire ou est situé le fichier config.inc.php, ajoute un nouveau fichier nommé .htaccess contenant:

Code : Tout sélectionner

AuthUserFile /chemin/vers/liste_utilisateurs
AuthGroupFile /dev/null
AuthName "Acces restreint"
AuthType Basic

<LIMIT GET POST>
Require valid-user
</LIMIT>
AuthUserFile indique le chemin d'accès absolu à la liste des utilisateurs. On va voir un peu apres ce qu'il faut mettre dans ce fichier.

Il est important de proteger l'accès au répertoire contenant la liste des utilisateurs et des mots de passe. Aussi il faut placer dans celui-ci un autre fichier .htaccess contenant cette fois ci uniquement la ligne:

Code : Tout sélectionner

deny from all
.

Le fichier liste_utilisateurs va donc contenir la liste des utilisateurs et des mots de passe associés. Le contenu du fichier doit être du type

Code : Tout sélectionner

utilisateur1:motdepassecrypte
utilisateur2:motdepassecrypte
Attention, les noms d'utilisateurs doivent correspondre avec ceux que tu as mis dans le fichiers config.inc.php, sinon tu affichera bien la page, mais tu n'auras pas accès aux calendriers protégés.

pour générer les mots de passe crypté qui vont bien, il y a l'utilitaire htpasswd, sinon on peut trouver des générateurs sur le net, comme à cette adresse.

Voilà, j'espère qu'avec tout ça, tu va t'en sortir.
Tack så micket
pom'
Salamandre
Messages : 38
Inscription : 12 mai 2005, 14:30

Message par pom' »

Eh ben, je sais pas comment te remercier Penpen :D
Si je peux me permettre, j'aurai une ou deux petites précisions à te demander ...
Dans le répertoire ou est situé le fichier config.inc.php, ajoute un nouveau fichier nommé .htaccess contenant:

Code : Tout sélectionner

AuthUserFile /chemin/vers/liste_utilisateurs
AuthGroupFile /dev/null
AuthName "Acces restreint"
AuthType Basic

<LIMIT GET POST>
Require valid-user
</LIMIT>
Je l'appelle comment ce fichier .htaccess ??? J'ai mis auth.htaccess, c'est ça ?

Idem pour cette partie :
Il est important de proteger l'accès au répertoire contenant la liste des utilisateurs et des mots de passe. Aussi il faut placer dans celui-ci un autre fichier .htaccess contenant cette fois ci uniquement la ligne:

Code : Tout sélectionner

deny from all
J'ai créé un dossier utilisateurs, puis mis dans celui-ci un fichier nommé deny.htaccess

Enfin, dernière question (pour l'instant :wink: ) : le fichier liste_utilisateurs n'a pas d'extension ?

Encore merci pour ton aide (et ta patience ...)
Invité

Message par Invité »

non c'est bien .htaccess. Seulement sous windows on peux pas nommer directement un fichier commencant par .
Il faut passer par l'invite de commande et utiliser la commande rename. ex:

Code : Tout sélectionner

rename monfichier .monfichier
penpen
Gecko
Messages : 64
Inscription : 05 janv. 2005, 12:45

Message par penpen »

oops oublié de me loguer...
Tack så micket
pom'
Salamandre
Messages : 38
Inscription : 12 mai 2005, 14:30

Message par pom' »

et rapide avec ça :wink:
concrètement, comment l'utilisateur va-t-il se loguer sur le portail ?
dois-je remettre l'authentification en place ?

Edit :
J'ai essayé de me connecter au portail et j'ai un message d'erreur :
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, admin@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.
penpen
Gecko
Messages : 64
Inscription : 05 janv. 2005, 12:45

Message par penpen »

ton fichier htaccess est mal configuré...
tu peux trouver de la doc un peu partout sur les htaccess.

Comme tu es sous windows il faut peut-être que tu change le chemin absolu.
Remplace les / par des \ (c'est peut être \\).

AuthGroupFile /dev/null je sais pas si ca va fonctionner non plus, essaye d'enlever la ligne.

J'ai testé le fichier que je t'ai donné, mais sous Linux, il faut certainement l'adapter un peu pour apache sous windows. Je pense que Google pourra t'aider.

Concretement, une fois réussi, voila ce que ca donne. Et pas besoin de remettre l'authentification en place.
Tack så micket
pom'
Salamandre
Messages : 38
Inscription : 12 mai 2005, 14:30

Message par pom' »

merci encore une fois !!!
Allez, encore 1 question :wink: ta signature contient ça :
Tack så micket
:shock:

Edit : tu m'as pas précisé si le fichier liste_utilisateurs avait une extension ...
merci
penpen
Gecko
Messages : 64
Inscription : 05 janv. 2005, 12:45

Message par penpen »

Ca fonctionne maintenant ? Si c'est la cas merci de faire profiter ton expérience et exposant ta solution, et de rennomer le sujet en métant résolu.

tu peux appeler liste_utilisateurs comme tu le souhaite (avec ou sans extension de n'importe quelle sorte). Si tu arrive à avoir l'ecran d'authentification, mais que les informations que tu rentre (utilisateur, mot de passe) ne fonctionne pas, c'est surement que le chemin renseigné dans AuthUserFile n'est pas le bon.

Tack så micket, c'est du suèdois, ca veux dire, merci beaucoup.
Tack så micket
pom'
Salamandre
Messages : 38
Inscription : 12 mai 2005, 14:30

Message par pom' »

ben non, ça marche pas ...
à l'authentification, il me refuse l'identifiant et le mot de passe ...
et bien sûr, dès que ce sera résolé, je le spécifierai dans le sujet.
là je suis en pleine bourre au boulot, mais dès que j'ai un moment de libre, je m'y remets :wink:
Tack så micket

Au fait, t'es vraiment un globetrotteur alors ...
penpen
Gecko
Messages : 64
Inscription : 05 janv. 2005, 12:45

Message par penpen »

Comme dis plus haut, le problème viens surement de ces deux lignes:
AuthUserFile /chemin/vers/liste_utilisateurs
AuthGroupFile /dev/null
Si elle sont mal configurée, apache ne trouvera pas correctement la liste des utilsateurs, du coup l'authentification ne marchera jamais.

Essaye peut-être comme cela:
AuthUserFile c:/chemin/vers/liste/la_liste_en_question
et ne mets pas la ligne AuthGroupFile.
Si le chemin contient des espaces, il faut surement entourer le chemin de simple cote.
Au fait, t'es vraiment un globetrotteur alors ...
Peut être pas encore tout à fait, mais j'essaye :wink:
Tack så micket
PatLogan
Gecko
Messages : 81
Inscription : 12 mai 2004, 11:53

Message par PatLogan »

hello,

je prend le train en cours de route

mais si tu créé des .ics sur un serveur distant (comme icalx.com par ex., voir topic ici)

tu peux très bien les mettre en lecture seule sur les clients sunbird

il suffit, quand tu plublie ton calendrier sur icalx.com, de le mettre en mode public et de ne pas cocher ce bouton radio :
Image

dans les option, il faut cliquer là :
Image

et tu n'as pas besoin de te prendre la tête avec des tas de paramètrages.

la réponse n'est peut-être pas parfaitement adaptée si tu tiens absolument à ce que ce soit en intranet pour des raisons de confidentialité...

à part ça, ça doit fonctionner nickel...

++

Pat
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité