2016-08-17 2 views
0

Visual Studio 2015 업데이트로 Asp.net 웹 양식을 만들었습니다. 모든 것이 기본값입니다.
Asp.Net 데이터베이스를 사용하여 Windows Form 응용 프로그램에서 로그인 양식을 만들고 싶습니다. 그러나 데이터베이스에 저장된 암호는 해시되며이 해시 유형을 모르므로 해당 문자열을 비교할 수 없습니다.
Asp.net Web Form의 기본 해싱 또는 인증을 확인하는 다른 방법은 무엇입니까?
감사합니다.
발견 된 솔루션 : https://stackoverflow.com/a/20622428/6713381Asp.net 웹 양식으로 작성된 데이터베이스의 데이터를 사용하여 Windows Form에 로그인하십시오.

+0

당신이 SQL Server 로그인과 암호 (서버 계층에 확인) 의미합니까 작동, 또는 사용자 정의 로그인/암호 (응용 프로그램 층에 검증)? – Anton

+0

@Anton 나는 사용자가 웹 사이트에 등록한 다음 해당 사용자 이름/암호를 사용하여 Winforms 응용 프로그램, 모든 개념에 로그인 할 수 있음을 의미하며 사용자 이름과 암호가 맞으면 성공 만 반환합니다. – Ken

답변

0

MySQL에는 md5 기능이 있으므로 SQL Server에서 암호를 비교해보십시오. salt 필드가 salt라고 가정하면 다음을 수행 할 수 있습니다.

select 1 from tablename where Username= @Username and Password = MD5(salt + @password); 

If 그러면 행이 성공적으로 검증됩니다.

+0

내 데이터베이스는 MSSQL 2016입니다. 그런데이 쿼리를 MSSQL에서 적합하게 만들었지 만 어떤 행도 반환하지 않았습니다. 나는 SHA512와 SHA256을 시도했지만 아무 것도 얻지 못했다. – Ken

관련 문제