2012-03-27 5 views
2

나는 asp.net mvc 3을 사용하고 있습니다. 내 문제는 자동 생성 된 my_aspnet_users를 사용하는 대신 사용자 정의 된 사용자 로그인 테이블을 사용해야합니다. 내가 작성한 사용자 로그인 테이블을 사용하도록 멤버쉽 및 역할 인증을 어떻게 지정할 수 있습니까? 나는이 블로그 Customized Membership and Role Provider을 발견했다. 그러나 이것은 사용자 정의 멤버십 및 역할 인증을위한 것입니다. 난 그냥 내가 만든 테이블을 사용하는 공급자를 가리 키도록해야합니다. 이것을 할 수있는 다른 방법이 있습니까?사용자 정의 테이블을 사용하는 회원 및 역할 인증

+0

XY 문제. http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem/66378#66378 왜 다른 테이블을 가리 키기 위해 필요합니까? –

+2

아마도 aspnet_ * 자동 생성 된 물건에 대한 스키마가 구토물을 유발하기 때문일 것입니다 ... –

+0

@ErikPhilips - 이것은 한동안 주변에 있었고 이미 일부 중앙 집중식 사용자 저장소가있는 모든 회사에서 일반적입니다. 여러 가지 이유로 (모두 기술적 인 것은 아님) 내장 테이블 구조를 항상 사용할 수있는 것은 아닙니다. 다시 한 번, 맞춤식 멤버쉽 공급자는 두려워 할 사항이 없습니다. – Josh

답변

1

기본 제공품 SqlMembershipProvider은 실제로 그렇게 작동하지 않습니다. 그것은 매우 구체적인 저장 프로 시저와 함께가는 스키마를 찾도록 설계되었습니다. 실제로 다른 스키마를에 "연결"할 수없고 작동 할 것으로 기대됩니다.

즉, 맞춤 멤버십 공급자를 구현하는 것이 모든 작업을 어렵게하는 것은 아닙니다. 나는 그것을 여러 번 해왔으며 모든 것을 구현할 필요가 없습니다.

MSDN docs은 시작하기에 좋은 장소이며 필요한 것을 안내합니다.

+0

덕분에 많은 조쉬, 이것은 큰 충고입니다. – RSB

3

표준 MembershipProvider을 사용하고 Users 테이블을 생성 한 사용자 이름 (아마도 사용자 이름)으로 매핑하는 방법은 어떻습니까?

+0

답장을 보내 주셔서 감사합니다. 예,하지만 내 사용자 테이블에 사용자 ID 열이 없습니다. DBA는 대규모 DB에 표준 인 id auto_increment를 가지고 있지 않습니다. – RSB

+2

왜이 매핑을 수행하기 위해 자동 증가 ID 열이 필요합니까? aspnet_users 테이블에서 고유 한 것을 포함하는 추가 열이 사용자 테이블에 필요합니다. ID 열이 없습니까? 그것은 이상한 결정입니다. – spender

+0

고마워요, 무슨 뜻인지 알았어요. id 컬럼에 대해서는 내 결정이 아닙니다. dba가 요청했습니다. – RSB