session puffff !!! - PHP - Programmation
Marsh Posté le 21-08-2003 à 19:08:54
jebo1 a écrit :
|
Ce qui me choque dans:
$password_base=md5($ligne_adm["password"]);
c'est que ça sous-entend que $ligne_adm["password"], qui provient si j'ai bien compris de la db, était stocké EN CLAIR puisque tu lui appliques md5 ici. Est-ce vraiment le cas?
(En général, on stocke dans les db le md5 d'un pwd plutôt que le pwd lui-même, me semble-t-il...)
Marsh Posté le 21-08-2003 à 20:26:25
ACut a écrit : |
oui le password est en clair, comment tu veux qui soit coder dès le départ
de + i va être changé puisque il est temporaire pour test
tu veut dire quo début la base est vide et tu rentre tes id via un formulaire, quand tu veux les changer, tu vide la base
Marsh Posté le 21-08-2003 à 21:39:18
jebo1 a écrit : |
Euh, j'ai pas le détail de ton prog (<<include connexion>>, <<requete pour recuperer les informations dans la base>>, etc.) donc je sais pas du tout comment ça s'articule et ce que ça fait exactement. Je te demandais juste si $ligne_adm[] était un objet récupéré dans une db, auquel cas je serais étonné qu'un pwd soit stocké "en clair" dans cette db...
Bon, vu ta réponse, le pb n'a pas l'air de venir de là...
Marsh Posté le 21-08-2003 à 22:22:36
non je disais pas ca méchamment, c juste une question
es ce la bonne procédure
Marsh Posté le 21-08-2003 à 22:38:36
jebo1 a écrit : non je disais pas ca méchamment, c juste une question |
Si on veut qu'il n'y ai pas de fuite au niveau des codes des gens, il est préférable de coder les mots de passes stockés dans la base. Ainsi, même un administrateur peu scrupuleu ou un pirate ne poura pas avoir les codes directement en clair.
Marsh Posté le 22-08-2003 à 11:14:53
omega2 a écrit : Si on veut qu'il n'y ai pas de fuite au niveau des codes des gens, il est préférable de coder les mots de passes stockés dans la base. Ainsi, même un administrateur peu scrupuleu ou un pirate ne poura pas avoir les codes directement en clair. |
quel est la procédure alors
y fo bien que les mots de passe existe en clair dans un premier temps
et ensuite insertion du password en md5 non ?
SINON POUR MA SESSION UNE IDEE
stp jet un coup d'oeil sur le topic gestion_bdd2
Marsh Posté le 22-08-2003 à 12:57:36
inutile ceci (la première ligne)
Code :
|
sinon je vois pas trop ta bidouille avec le md5 aussi
Marsh Posté le 22-08-2003 à 13:28:44
JagStang a écrit : inutile ceci (la première ligne)
|
ya pas de bidouille ce que je cherche a faire, c coder mon password qui est à l'origine en clair dans la base pour comparaison
mais apparement il fo déjà qu'il soit codé
comment faire
Marsh Posté le 22-08-2003 à 14:53:37
comme les autres .....
la procédure classique c'est de stocké le mot de passe crypté dans la base.
sinon quel intérêt de le crypté uniquement pour comparer ? alors que le traffic se fait en clair aussi bien client-serveur que serveur-serveur...
dans ton cas c'est ridicule de crypter. C'est une étape qui n'apporte absolument rien du tout.
si tu optes pour stocker le mot de passe crypté ... alors, lors de l'authentification tu récuperes la valeur entrée par l'utilisateur, tu la cryptes (suivant le même codage) et tu compares avec celle de la base.
remarque : tu n'es pas obligé d'utiliser md5(), tu peux utiliser crypt(); qui est aussi largement suffisant en terme de sécurité.
en ce qui concerne ton problème de session, ca n'a rien a voir.
Je te recommande de proceder d'abord a ces changements et de venir nous voir après
Marsh Posté le 22-08-2003 à 16:07:14
ok g v essayé ca
sinon pour les sessions marche tils avec php3, parce que g pas encore le passage à php4 (pas de $_post,..)
Marsh Posté le 23-08-2003 à 00:57:55
jebo1 a écrit : ok g v essayé ca |
session uniquement avec php4 -_-
tu metone ca marchais pas
Marsh Posté le 23-08-2003 à 02:38:55
Marsh Posté le 23-08-2003 à 12:55:13
Maxime a écrit : |
ok donc je laisse tomber les sessions mais comment protéger mon interface et éviter le forcing par l'url autrement dit être obligé de s'identifier
g déjà mis tout dans un répertoire avec index pour empecher le listing
es ce que la config et mise en place de htaccess suffirait à combler ce pb
Marsh Posté le 23-08-2003 à 13:48:25
cookie
Marsh Posté le 23-08-2003 à 14:02:23
ouais cookie, cest la seul soluce.
le must, PHP 4.
d'ailleur pourquoi tu n'a pas php4?
Marsh Posté le 23-08-2003 à 14:20:47
Maxime a écrit : ouais cookie, cest la seul soluce. |
g peu avoir php4 mais à mon initiation php, g pas trop été habitué à mettre un $_post derrière chaque variable qui passe par l'url
de+, si g v chez free, par exemple, eux ont php3 je crois
mais bon il va bien falloir que je le fasse ...
Marsh Posté le 23-08-2003 à 14:28:33
free en PHP4
et PHP ne signifie pas forcement register global off
Marsh Posté le 23-08-2003 à 14:52:41
simogeo a écrit : free en PHP4 |
CE QUI VEUT DIRE ...
Marsh Posté le 23-08-2003 à 14:57:29
jebo1 a écrit : |
que tu n'as pas forcement besoin d'encapsuler tes variables ($_POST, $_GET, ......)
Marsh Posté le 23-08-2003 à 15:27:53
simogeo a écrit : |
oui mais si g fé pas ca g v avoir des erreurs à lapel
parce que le register global va changer le php.ini, ya pas que ca d'ailleurs
Marsh Posté le 23-08-2003 à 15:29:55
actuellement tu bosses avec PHP 3.x avec un register global a off j'imagine ... alors quel est le problème pour la suite ?
Marsh Posté le 23-08-2003 à 15:29:59
register global ON = pas besoin de $_POST etc.
OFF = obligatoirement $_POST.
Marsh Posté le 23-08-2003 à 16:16:29
simogeo a écrit : |
non si tu veux, je veux m'assurer qu'il n'y aura pas de pb lorsque je v mette en ligne mes pages php
sur free par exemple, je pense que c le mieux chez les hébergeurs gratuits et sans pub
Marsh Posté le 23-08-2003 à 16:20:43
Maxime a écrit : register global ON = pas besoin de $_POST etc. |
je bosse avec easyphp 1.5 avec php 3.x ouais, mais g une version 1.6 dans un coin
Marsh Posté le 23-08-2003 à 16:31:39
jebo1 a écrit : |
dans ce cas chez free .. tu peux bosser en PHP4 et sans encapsulation de variable
Marsh Posté le 23-08-2003 à 16:52:24
simogeo a écrit : |
oui mais es ce que eux ont la meme config
register global on
Marsh Posté le 23-08-2003 à 16:57:54
jebo1 a écrit : |
ouuuuuuuuuuuuiiiiiiiiiiiiiiiiiiiiiiiiiii .....
on a du mal a se comprendre toi et moi non ?
Marsh Posté le 23-08-2003 à 18:29:25
simogeo a écrit : |
okkkkkkkkkkkkkkkkkkkkkkkkkkkkkk !!
mais
si g v chez un autre hébergeur et que celui ci a le register global a off
Marsh Posté le 23-08-2003 à 19:12:36
jebo1 a écrit : |
il aura pas global off POINT
de toute facon tu peut vérifier avant.
Marsh Posté le 24-08-2003 à 14:48:57
g installé easyphp 1.6 mais j'arrive pas à accéder à phpmyadmin
sur la page d'accueil, il ne me propose que les repertoires sous www et c tout
Marsh Posté le 24-08-2003 à 16:01:59
administration et non pas web local
Marsh Posté le 24-08-2003 à 16:08:13
simogeo a écrit : administration et non pas web local |
traduction
en effet je suis en localhost et je n'arrive pas à me connecter à mysql
Marsh Posté le 24-08-2003 à 16:10:14
clic droit sur la petite icone easyphp (ds la barre des taches en bas a droite)
et tu cliques sur administration
raccourci ici : http://127.0.0.1/home/
Marsh Posté le 24-08-2003 à 16:14:15
ben benh sur
Marsh Posté le 24-08-2003 à 16:53:48
euh
et tu mé quoi dans ton fichier de connexion
localhost marche pas, l'adresse que ta donné avant marche g essayé dot trucs mais marche pas
Marsh Posté le 24-08-2003 à 17:02:02
connexion a quoi ? a la base de données ?
"localhost"
Marsh Posté le 24-08-2003 à 17:14:12
simogeo a écrit : connexion a quoi ? a la base de données ? |
oui à la base oui
mais localhost ne marche pas et marchait avant
1.5 >1.6
es ce que ca change ou est ce que ca vient dot part (firewall)
Marsh Posté le 24-08-2003 à 17:32:33
user="root"
passwoord=''
et je te recommande aussi de creer un utilisateur avec des droits limités ...
Marsh Posté le 24-08-2003 à 18:18:26
ok
aller encore une ptite :
g donc php4 et g gere des images (affichage, modif, suppr, ajout)
et impossible d'afficher une image alors que ca marchait avant
le chemin est bon mais affichage nul
on m'a dit sur ce meme forum qu'il y avait pas de relation avec l'upload de fichier
ton avis ?
Marsh Posté le 21-08-2003 à 16:06:59
suite du topic gestion bdd2, nouveau post pour réponses plus rapides car très urgent
<?php
//demarrage session
session_start();
//recup id et nom session
$idsession=session_id();
$nomsession=session_name();
//login et password dans bdd
$temp=$password;
$password="";
$password=md5($temp);
//Inclusion du fichier pour se connecter a la base
include connexion ca c ok
// Requete pour recuperer les informations dans la base
c ok
//codage id base
$login_base=$ligne_adm["login"];
$password_base=md5($ligne_adm["password"]);
// on vérifie les valeurs du formulaire
if($login==$login_base && $password==$password_base)
{
//on enregistre les variables
session_register("login" );
session_register("password" );
//acces autorisé, ouverture menu
ok
}
else
{
//si non valide alors ...
echo("<script language=\"javascript\">alert('Saisie Identifiants incorrecte');</script>" );
echo("<script language=\"javascript\">window.close(\"index.php\" );</script>" );
echo("<script language=\"javascript\">window.open(\"index.php\" );</script>" );
session_unset();
session_destroy();
}
?>
<html>
<head>
<title></title>
<script language="JavaScript">
//codage password
function codage()
{
<? $HTTP_POST_VARS["password"]=md5($password); ?>
}
</script>
</head>
..
/* formulaire par post*/
ca fé une boucle et affiche à chaque fois identifiants incorrecte, autrement dit il passe direct au else
je pensé que c t un souci avec md5, dans le sens ou je fé le codage après mais non, g essayé sans.
es ce mon code qui est mal positionner, ou une erreur flagrante ?
---------------
la vie ne vaut rien, mais rien ne vaut la vie