2011-03-16 5 views
0

ASP.Net 웹 양식에 사용자 지정 "사용자 추가"페이지를 만들고 문제가 발생했습니다. 모든 데이터를 회원 테이블에 삽입 할 수 있지만 비밀번호는 일반 텍스트로 저장되며 비밀번호는 하드 코딩되어 있습니다.ASP.NET 암호 해시 및 암호 소금

사용자가 로그인 할 수 있도록 비밀번호를 해시하는 방법 (멤버십 프레임 워크가 비밀번호 해시를 확인하고 일반 텍스트 비밀번호를 확인하지 않음). 또한 소금이 완전히 무작위입니까? 아니면 암호 해시에 연결되어 있습니까?

어떤 도움도 대단히 감사하겠습니다,

마크

답변

1
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15"> 
     <providers> 
     <clear /> 
     <add 
      name="SqlProvider" 
      type="System.Web.Security.SqlMembershipProvider" 
      connectionStringName="MySqlConnection" 
      applicationName="MyApplication" 
      enablePasswordRetrieval="false" 
      enablePasswordReset="true" 
      requiresQuestionAndAnswer="true" 
      requiresUniqueEmail="true" 
      passwordFormat="Hashed" /> 
     </providers> 
    </membership> 

는 언급 passwordFormat = "해시 된"라인을 참조하십시오. 암호 해시를 설정하려면이 설정을 해결해야합니다. PasswordFormat에는 세 개의 값이 있습니다. 원하는 것을 선택하고 이에 따라 응용 프로그램을 구성하십시오.

+0

Upvoted,하지만 소금을 추가하는 방법은 무엇입니까? – Ben

+0

@Ben : 맞춤 멤버쉽 공급자 – LukeP