Partage
  • Partager sur Facebook
  • Partager sur Twitter

[T-SQL]Difficultés pour vérifier un utilisateur

Sujet résolu
    1 novembre 2019 à 10:22:17

    Bonjour ! 

    Je travaille actuellement sur un site en asp.net et j'utilise une base de donnée microsoft pour stocker mes données.

    Entre autre, le pseudo et le mot de passe de mon utilisateur.

    C'est la première fois que j'utilise des fonctions de hashage et j'éprouve quelques difficultés avec celles-ci.

    1) J'arrive à récupérer des informations d'un utilisateur que je viens de créer avec comme mot de passe '1234'

    Je l'insère avec une stored procedure qui utilise la fonction HASHBYTES('SHA2_512',@password) avec @password passé en argument.

    J'arrive ensuite à sélectionner cet utilisateur avec la query suivante

    select * from people
    	where password = HASHBYTES('SHA2_512','1234');


    Par contre, je n'arrive pas à récupérer les utilisateurs insérés il y a quelques jours.

    Utilisateurs ayant des mdp soit en chaine de caractères simple comme 'zen' soit avec des caractères spéciaux comme 'Test1234='

    2) ma stored procedure ne fonctionne pas comme prévu quand je fais un 'WHERE' avec deux arguments

    BEGIN
    
    	IF EXISTS(SELECT id FROM [PonderoStat].[dbo].[people] 
    		WHERE LOWER(pseudo) = LOWER(@pseudo) AND HASHBYTES('SHA2_512',@password) = people.password)
    	BEGIN
    		SELECT 1;
    	END
    
    	ELSE
    	BEGIN
    		SELECT 0;
    	END
    END


    Ceci me retourne systématiquement 0

    Alors que ceci 

    IF EXISTS(SELECT id FROM [PonderoStat].[dbo].[people] WHERE people.password= HASHBYTES('SHA2_512','1234') AND people.pseudo = '1234')
    	BEGIN
    		SELECT 'True';
    	END
    Else
    	BEGIN
    		SELECT 'False';
    	END

    Me retourne bien 'True'.

    Je suis un peu perdu et ne sais plus trop où regarder pour corriger mon erreur.

    Ça n'a pourtant pas l'air bien compliqué :/

    • Partager sur Facebook
    • Partager sur Twitter

    [T-SQL]Difficultés pour vérifier un utilisateur

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown