0

ex:comment stocker le mot de passe sur Gae quand quelqu'un registre

Nom d'utilisateur: zjm1126 mot de passe: 11

i stockaient le mot de passe du magasin de données sur Gae,

quand je vois l'affichage des données à/_ah/admin, je peux voir le mot de passe mot de passe de tous les gens qui s'enregistrent,

Je pense que ce n'est pas sûr, oui?

est le mot de passe stroed comme ça?

comment stocké le mot de passe,

grâce

alt text http://omploader.org/vNGtxZA

et la méthode check_password est:

user=MyUser.get_by_key_name(self.request.get('username')) 
if user.password == self.request.get('password'): 
    session['user.key']=str(user.key()) 
else: 
    raise Exception('error 404') 

Répondre

10

Vous devriez jamais magasin un mot de passe en texte clair.

utiliser un algorithme de hachage des données ir-reversible, comme sha ou md5

Voici comment vous pouvez créer un hachage en python:

from hashlib import sha256 
from random import random 
random_key = random() 
sha256('%s%s%s'%('YOUR SECRET KEY',random_key,password)) 

Vous devez également stocker la clé aléatoire et hachage l'utilisateur mot de passe fourni de la même manière.

+3

md5 ne devrait pas être recommandé. – systempuntoout

+0

md5 est correct pour les petites bases de données, je doute que vous aurez assez d'utilisateurs à affronter – DanDan

0

Il existe de nombreux articles sur stackoverflow sur la façon d'utiliser divers algorithmes pour produire l'intégrité des mots de passe. Les algorithmes que vous devriez examiner sont SHA-256/SHA-512 en conjonction avec un long sel généré aléatoirement (qui serait également stocké dans la base de données) ou bcrypt. Je n'entrerai pas dans la discussion de pourquoi l'un est meilleur que l'autre ici parce que cette discussion a déjà lieu dans d'autres questions.

3

Il n'y a rien de spécifique à l'application ou de nouveau à propos de cette question qui n'a pas été répondu 10 fois auparavant sur SO. Rechercher Stack Overflow pour store password et lire les 5 premières questions. Cela devrait vous donner une bonne base dans le sujet.