2013-09-24 2 views
-1

이 동작을 발견했을 때 MVC SimpleMembership userprofiles를 테스트하고있었습니다.이상한 MVC/단순 회원 로그인 대소 문자를 구분하지 않는 사용자 이름

VS2012의 인터넷 설정으로 새 MVC 프로젝트를 만들었습니다. 프로젝트를 실행하십시오. 사용자 이름이 "User Name"이고 암호가 "Somepassword" 인 새 사용자를 만들었습니다. 그런 다음 로그 아웃되었습니다. 다시 로그인했지만 사용자 이름 "user name""Somepassword"을 사용했습니다. I have changed the user name letters with Lower case "U" & "N"을 알게되면 나는 조합을 시도하고 각 경우에 응용 프로그램은 "사용자 이름"(및 기타 조합)으로 표시된 로그인 부분에 "사용자 이름"아래에 회원으로 로그인되었습니다. MVC App의 보안에 대해 조금 걱정하고 있습니다. MVC4 Asp-Net에서 간단한 멤버쉽으로이 동작이 왜 발생하는지 설명 할 수 있습니까?

+1

내 생각에 사용자 이름의 고유성은 대소 문자를 구분하지 않습니다. – David

+0

@David 그건 분명합니다. –

+1

네, 분명합니다. 왜 당신이 명백한 것을 걱정하고 있는지 이해할 수 없습니다. 어쨌든 당신의 질문은 무엇입니까? 사용자 이름은 대소 문자를 구별하지 않습니다. 암호는 대소 문자를 구분합니다. 그것은 그것이 있어야하고 그것이있는 그대로입니다. 다른 사람들이 귀하의 특정 비즈니스 규칙에 부합하지 않는 것으로 밝혀지면 자신의 회원 공급자 구현을 작성하십시오. –

답변

1

I 나는 몇 가지 중 하나 설명 할 수 MVC 응용 프로그램의 보안에 대해 조금 걱정 왜 간단한 회원과 MVC4의 ASP-인터넷에서이 문제?

아니요, 걱정하지 마십시오. 암호는 대소 문자를 구분하므로 userrname은 대소 문자를 구분하지 않습니다. 어쨌든 인터넷상의 모든 주요 웹 사이트가 작동하는 방식입니다. 보안에 대한 우려가 있다면 예를 들어 Google을 예로 들어 보겠습니다. 사용자 이름에 대해 어떤 대소 문자가 마음에들 수도 있습니다. 그것은 완벽하게 대소 문자를 구별하는 비밀 번호이고, 그것이 있어야하는 방법입니다.

이제는 이상한 이유로 사용자 이름에 대소 문자를 구분하고 싶은 경우 (왜 지구상에 있겠습니까?) 자신의 글을 작성하고 귀하가 필요로하는 모든 규칙을 구현하여 기본 단순 멤버십 공급자를 무효화하는 것보다 더 많은 것을 느낄 수 있습니다. 특정 사건.

+0

응용 프로그램에서 대/소문자를 구분하지 않습니다. 회원 자격의 작동 방식을 알고 있다고 생각했습니다. 그러나 이것은 내가 다시 가서 학습을 시작하기를 원하게 만든다. –

+1

글쎄, 명백한 것이 비즈니스 요구 사항에 맞지 않는다면 항상 자신 만의 맞춤 멤버십 제공 업체를 운영 할 가능성이 있습니다. 하지만 어쨌든 Simple Membership Provider의 기본 구현에 대해 사용자 이름의 무감각이 어떤 보안 문제를 일으키고 있는지 전혀 알지 못합니다. 인터넷에 연결된 모든 주요 웹 사이트가 오늘날 자연스럽게 작동하는 방식입니다. –