|
Gestionnaire de login
|
| Auteur |
Message |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
Gestionnaire de login
Voila, je pense faire un système de gestion de logins un peu particulier, dédié aux webmasters. Ce serait quelque chose de web-based, à priori en php + xml + xslt.
Le but est de pouvoir garder quelque part, et de manière exportable, tous les accès nécessaires à la gestion d'un site: ftp, sql...
Ce que ça donnerait à peu près:
<sites>
<site name="Site 1">
<icon>url icon</icon>
<ftp>
<host="ip/url" />
<login="login1" />
<pass="pass1" />
</ftp>
<sql>
<host="ip/url sql" />
<login="login sql" />
<pass="pass sql" />
</sql>
</site>
<site name="Site 2">
<icon>url icon</icon>
<ftp>
<host="ip/url" />
<login="login2" />
<pass="pass2" />
</ftp>
<sql>
<host="ip/url sql" />
<login="login sql" />
<pass="pass sql" />
</sql>
</site>
</sites>
Est-ce judicieux? sachant que le but est surtout d'avoir quelque chose de réutilisable ailleurs.
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 10/02/2007 16:47 |
|
 |
Toam
Junior Member
 
Messages : 36
Groupe : Membres
Inscription : Nov 2006
Statut :
Hors ligne
Réputation : 0
|
RE: Gestionnaire de login
Pourquoi pas ... mais je ne suis pas sûr d'avoir réellement saisi le but.
Le format XML me dérange dans le sens où si le répertoire est mal protégé ou a été oublié d'être protégé, alors quelqu'un de mal intentionné récupère des infos critiques.
Je préfère que ce soit un script php qui génère un fichier xml, dans ce cas le script peut faire des contrôle avant de générer ou non le fichier xml ... mais ceci implique d'avoir les infos sauvegardé autre part ce qui ne va pas dans ton sens.
En ce qui concerne la partie base de données je le ferais plutôt comme ça pour que ce soit plus général.
<sites>
<site name="Site 1">
<icon>url icon</icon>
<ftp name="description name">
<host="ip/url" />
<login="login1" />
<pass="pass1" />
</ftp>
<database name="database name">
<type="MySQL" />
<host="ip/url sql" />
<login="login sql" />
<pass="pass sql" />
</database>
</site>
...
</sites>
enfin comme dit plus haut, je ne suis pas sûr d'avoir réellement saisi le besoin.
Ce message a été modifié le: 11/02/2007 13:43 par Toam.
|
|
| 11/02/2007 13:42 |
|
 |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: Gestionnaire de login
Oui, tout à fait d'accord avec toi sur le principe du XML, ne serait-ce que pour pouvoir ajouter l'url et le login/pass d'une interface d'admin, ...
Concernant le XML proprement dit, je pensais trouver un algo de codage des mots de passe et que les mots de passe ne soient décodés qu'avec un accès protégé.
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 12/02/2007 09:38 |
|
 |
coca25
Junior Member
 
Messages : 20
Groupe : Membres
Inscription : Nov 2006
Statut :
Hors ligne
Réputation : 0
|
RE: Gestionnaire de login
ca a l'air interessant, le seul bemol est que étant donné que c'est web-based, l'utilisateur devra quand meme ouvrir son application favorite pour acceder au ftp ou à la base.
il faudrait penser un truc du genre créer un script pour lancer tel ou tel application, ou alors utiliser les application web destinés au base de données ou ftp.
juste une remarque, en xml:
ceci est faux, le nom d'une balise ne peut etre en meme temps un attribut
une autre remarque qui m'a un peu bloqué dans mes fichiers: je me suis rendu compte qu'il vaut mieux mettre une description dans une balise plutot que dans un attribut (si elle est longue ou si elle comporte des \n)
ah oui, pour le cryptage, tu peux utiliser le module mcrypt de php?
enfin bon, c'est qu'une ébauche
|
|
| 12/02/2007 11:29 |
|
 |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: Gestionnaire de login
Bien entendu, le modèle est à affiner, et ce pour deux raisons:
1) c'est actuellement un simple projet, la syntaxe utilisée est plus conceptuelle qu'autre chose
2) le modèle définitif devra être évolutif pour pouvoir accepter un peu tout.
Concernant le cryptage des mots de passes, je cherche un système plutôt universel car le but est que le fichier xml soit transportable et réutilisable. But avoué: pouvoir développer une petite appli sur mon PDA qui exploiterait ce fichier soit en le prenant en ligne soit en local.
Je pense utiliser blowfish comme algorithme, mcrypt() semble pouvoir le décoder et il existe des sources dans la plupart des langages.
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
Ce message a été modifié le: 12/02/2007 13:42 par CrazyCat.
|
|
| 12/02/2007 12:32 |
|
 |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: Gestionnaire de login
Bon, j'ai résolu le premier point: le codage/décodage des données "sensibles" (les mots de passe).
Je voulais utiliser la fonction mcrypt() mais je me suis rendu compte qu'elle n'était pas fréquemment installée sur les serveurs et le simple webmaster ne peux pas l'installer (il faut recompiler php).
Pour cela, j'ai créé une petite classe PHP qui à l'avantage d'être vraiment portable: elle se base uniquement sur de la translation de caractères et de l'encodage standard.
Je donne le code ici mais l'explication est à http://www.crazycat.info/astuce31-php-Cr...nnees.html
<?
class encrypt {
var $key;
var $data;
function init($key) {
$this->sk = $key;
}
function code($string) {
$this->data = '';
for ($i = 0; $i<strlen($string); $i++) {
$kc = substr($this->sk, ($i%strlen($this->sk)) - 1, 1);
$this->data .= chr(ord($string{$i})+ord($kc));
}
$this->data = base64_encode($this->data);
}
function decode($string) {
$this->data = '';
$string = base64_decode($string);
for ($i = 0; $i<strlen($string); $i++) {
$kc = substr($this->sk, ($i%strlen($this->sk)) - 1, 1);
$this->data .= chr(ord($string{$i})-ord($kc));
}
}
}
?>
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 16/02/2007 13:13 |
|
 |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: Gestionnaire de login
Bon, je pense que la structure du XML commence à bien avancer.
La DTD
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT url (#PCDATA)>
<!ELEMENT site ((name, url, access+))>
<!ELEMENT server (#PCDATA)>
<!ELEMENT pass (#PCDATA)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT logins ((site+))>
<!ELEMENT login (#PCDATA)>
<!ELEMENT comment (#PCDATA)>
<!ELEMENT base (#PCDATA)>
<!ELEMENT access ((server, login, pass, (comment | (base, comment?))?))>
<!ATTLIST access
type (web | ftp | database) #REQUIRED
>
Fichier exemple
<!DOCTYPE logins SYSTEM "logins.dtd">
<logins>
<site>
<name>Nom du site</name>
<url>http://www.domain.com</url>
<access type="ftp">
<server>127.0.0.1</server>
<login>moi</login>
<pass>password</pass>
</access>
<access type="database">
<server>localhost</server>
<login>moi</login>
<pass>password</pass>
<base>mybase</base>
<comment><![CDATA[my comments here]]></comment>
</access>
<access type="web">
<server>http://www.domain.com</server>
<login>moi</login>
<pass>password</pass>
</access>
</site>
<site>
<name>Nom du site 2</name>
<url>http://www.domain.com</url>
<access type="ftp">
<server>127.0.0.1</server>
<login>moi</login>
<pass>password</pass>
<comment><![CDATA[my comments here]]></comment>
</access>
<access type="database">
<server>localhost</server>
<login>moi</login>
<pass>password</pass>
<base>mybase</base>
</access>
<access type="web">
<server>http://www.domain.com</server>
<login>moi</login>
<pass>password</pass>
</access>
</site>
</logins>
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 18/02/2007 15:28 |
|
 |
coca25
Junior Member
 
Messages : 20
Groupe : Membres
Inscription : Nov 2006
Statut :
Hors ligne
Réputation : 0
|
RE: Gestionnaire de login
ca serait interessant da rajouter un repertoire de base pour le ftp, au cas ou ca ne serait pas le repertoire racine
|
|
| 19/02/2007 11:05 |
|
 |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: Gestionnaire de login
Je le note.
D'ailleurs, vous pouvez soumettre d'autres idées (types d'accès, paramêtres, ...)
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 19/02/2007 11:11 |
|
 |
coca25
Junior Member
 
Messages : 20
Groupe : Membres
Inscription : Nov 2006
Statut :
Hors ligne
Réputation : 0
|
RE: Gestionnaire de login
en fait, ca depend qui l'utilise, si c'est pour des sites web normaux, ca a l'air assez, par contre si on commence à avoir des sites ou services plus évolués, on peut avoir besoin d'information genre port d'acces (base de données, intranet sur port autre que 80), acces ssh/sftp
pour ce qui est du port d'acces, il peut etre rajouté à la fin de l'adresse du serveur
mais ce qui est interessant avec le xml, c'est que l'ajout de balises ne modifie pas forcement le programme qui le gere, ce qui permet de le faire évoluer sans problèmes.
|
|
| 19/02/2007 12:12 |
|
 |
|
|