2013-06-07 1 views
0

몇 가지 조언이 필요합니다. 저는 현재 MVC 4 & SimpleMemberhip을 LDAP와 함께 사용하여 사용자를 인증하고 있습니다. 문제는 보안 문제로 인해 사용자 이름과 비밀번호를 webpages_Membership 테이블에 저장하고 싶지 않다는 것입니다. 두 번째 문제는 사용자가 편집 할 수있는 프로필을 제공하고 싶다는 것입니다. 처음SimpleMembership을 사용하지 않고 사용자 프로필을 구현할 수 있습니까?

  1. 사용자 로그 및 새 항목은 홈페이지
  2. 이름에 표시됩니다 webpages_Membership
  3. 에서 사용자 프로필을 편집 할 개별 링크를 생성 :

    여기에 지금까지 어떤 작품입니다 프로파일

  4. 사용자의 특정 세부 LDAP 서버로부터 페치되어 처음 접속과
  5. ,174 프로필에 기록 된 UserProfiles 표에 추가 나는 현재 ValidateUser 방법에 대한 재정의와 SimpleMembership을 사용하고

  • 사용자는 자신의 프로필을 사용자 정의 할 수 있습니다. 모든 것이 제대로 작동하지만 LDAP 사용자 이름 & 암호를 저장할 필요가 없습니다. 이 작업을 수행 할 수 있습니까?

    p.s. 나는 처음 로그인 할 때 외에 새로운 사용자 & 프로파일을 만드는 더 좋은 방법이 있다는 것을 알고 있지만 여전히 그것에 대해 연구 중이다.

  • 답변

    1

    당신이 (SimpleMembership 기본적으로 할 것) 암호를 저장하지 않으려면, 당신은 ExtendedMembershipProvider에서 자신의 사용자 지정 공급자를 유도하는 것이 더 낫다 (SimpleMembership에서 어쩌면 나,하지만 복잡한 얻을 것) 및 LDAP 쓰기 구현하거나 one of the ones on NuGet을 사용하십시오. no built-in LDAP support in SimpleMembership이 있습니다. 따라서 어떤 접근 방식을 사용하면 나중에 당신을 물들 일 것입니다.

    UserProfile의 경우 UserProfile 모델에서 사용자 지정 속성을 만들고 이에 따라 데이터베이스를 업데이트하고 사용자가 편집 할 수 있도록 UI를 작성하는 등 일반적인 UserProfile 사용 사례와는 다른 요구 사항처럼 들리지 않습니다. 이 중 어떤 속성을 직접 편집 할 수 있어야합니다.

    (편집)

    각주. "How do I use my own database with SimpleMembership and WebSecurity? What is MVC4 security all about?"에 대한 대답으로 나는 ExtendedMembershipProvider이 어떻게 적용되는지, 그리고 WebSecurity과 같은 새로운 클래스가 ExtendedMembershipProvider (예 : SimpleMembershipProvider)의 구체적인 구현 인 제공자를 기반으로 작동하는 방식에 대해 회원 역사를 살펴 봅니다. WebSecurity과 함께 사용하기 위해 자신의 공급자를 파생하고자하는 사람은 해당 대답을 읽을 가치가 있습니다.

    +0

    답장을 보내 주셔서 감사합니다. 저는 이전에 Extended Membership을 시도하지 않았지만 그 가치가있는 것 같습니다. 나는 nJupiter 패키지를 시험해 보았지만 좀 더 자세하게 탐색 할 필요가있다. FYI, 내가 언급하지 않은 경우를 위해, UserProfile 잘 작동합니다. 프로파일을 편집하고 저장할 수 있습니다. 회원 문제를 해결하기 만하면됩니다. – nouptime

    +0

    @nouptime.'ExtendedMembershipProvider'는'SimpleMembershipProvider'의 기반이되기 때문에'WebSecurity'와 함께 당신의 공급자를 사용하기를 원한다면 파생 된 것입니다. 나는'WebSecurity'와'ExtendedMembershipProvider'가 [이 해답에서] (http://stackoverflow.com/a/16734651/1945631)에 대해 어떻게 보았는지에 대한 광범위한 설명을 썼다. –

    0

    코드 첫 번째로 필수 테이블을 만들어 멤버쉽 공급자에 사용자 정보를 저장하지 않아도되었습니다. 이제 새로운 사용자를 생성하여 UserProfile 테이블에 저장할 수 있습니다.

    관련 문제