웹 보안이 처음이므로 직접 구현하고 싶지는 않습니다. ASP.NET MVC 인터넷 응용 프로그램의 VS2012 템플릿을 통해 SimpleMembership을 사용할 계획입니다. 문제는 웹 API를 통해 데이터를 전달해야한다는 것입니다.ASP.NET MVC 인터넷 응용 프로그램 템플릿에서 수동으로 유효성을 검사하는 방법
내 웹 API에 기본 인증을 사용할 계획이므로 http 헤더에 사용자 이름/패스를 전달하면됩니다. Thinktecure.IdentityModel을 사용하여 메시지를 가로 챌 수 있습니다. 다음은 ASP.NET 회원을 사용하는 example이다 : 나는 내 자신의 부울 기능 Membership.ValidateUser를 대체 할 수
authConfig.AddBasicAuthentication((userName, password) =>
Membership.ValidateUser(userName, password));
. 사용자 이름/암호로 내 사용자 지정 데이터베이스를 성공적으로 쿼리했으며 모든 것이 정상적으로 작동했습니다. 그러나 문자열 (또는 심지어 인코딩 된) 암호를 저장하고 싶지 않기 때문에 템플릿의 사용자 데이터베이스를 사용하고 있습니다.
SimpleMembership 데이터베이스를 사용하여 자격 증명을 수동으로 확인하는 방법이 명확하지 않습니다. UserProfile을 가져올 수는 있지만 프로필의 비밀번호를 확인하는 방법을 알 수 없습니다.
UserProfile user = context.UserProfiles.Find(1);
==OUTPUT==
user
UserId: 1
UserName: "bob"
입력 된 암호가 기존 사용자의 암호와 일치하는지 어떻게 확인할 수 있습니까?
도움 주셔서 감사합니다.
Hi Mark - ValidateUser()가 작동하지 않았습니다. 내일 더 자세한 내용으로 질문을 업데이트하겠습니다. 그리고 해시 된 패스워드에 대한 링크에 감사드립니다. – brudert
@brudert 훌륭한 자료, ValidateUser()에 대한 오류를 알려 주시면 해결할 수 있습니다. –