2013-02-11 4 views
0

일부보고를 수행하는 기존 ASP.NET 웹 응용 프로그램을 사용하는 제품 소유자와 함께 작업하고 있습니다. 토론을 위해이 "WebApp1"이라고 부르 자.DotNetNuke에서 인증 공급자와 멤버 자격 공급자의 차이점은 무엇입니까?

그녀는 포럼 기능을 제공하기 위해 DotNetNuke 포털을 제공 할 것을 요청했습니다.

요구 사항의 일부로 DotNetNuke 포털의 기본 로그인 화면에서 "WebApp1"의 사용자 데이터베이스에 대해 사용자를 인증해야합니다. "WebApp1"의 기존 사용자 테이블에는 암호가 해시되었습니다.

이러한 요구 사항을 연구하면서 MemberShipProvider 패턴과 AuthenticationProvider가 동일한 요구 사항을 처리하는 것으로 나타났습니다.

DotNetNuke의 관점에서 볼 때 이러한 공급자의 차이점은 무엇입니까? 어떤 패턴이 가장 적은 복잡성을 도입합니까?

DotNetNuke에 대한 제 경험이 제한되어 있습니다.

귀하의 도움에 대해 StackOverflow 커뮤니티에 감사드립니다.

답변

0

인증은 로그인 만 처리합니다 (누가 {username}이고 올바른 비밀번호를 가지고 있습니까).

회원이 처리하는 플러스의 권한 부여와 같은 (지금은, 당신이 누구인지 당신이 그렇게 할 수 있음) 나는 PowerDNN.com

안녕 마이클 ----

작동 ----

0

을, 몇 달 전에 나는 DotNetNuke 웹 사이트를 리눅스 기반의 백엔드 시스템에 연결하는 것과 비슷한 일을하기 위해 멤버십 제공자를 썼다. 나는 조금기만당하는 것 같았지만, 내 해결책은 꽤 잘 풀렸다.

내가 한 일은 다음과 같습니다. 1) DotNetNuke의 멤버 자격 공급자로부터 상속 받았습니다. 2) 사용자 정의 코드로 "로그인"기능을 무시했습니다. 2.1) 원격 시스템에서 사용자를 찾습니다. 2.2) 원격 사용자의 자격 증명을 확인합니다. 2.3) DNN에 사용자가 없으면 사용자를 만듭니다. . I는 로컬 사용자를 만들 때 2.4)이 난의 사용자를 로그) DNN 2.5에있는 권한을 동기화하여 AS

는 FYI, I 그것을 같은 접두사 수득 "유저 - #####"어디 # ####은 원격 시스템의 ID입니다. 그렇게하면 어느 사용자가 "일반"dnn 사용자이고 어떤 사용자가 동기화 된 사용자인지 쉽게 알 수 있습니다.

또한 원격 DB에서 사용자를 찾을 수없는 경우 DNN 자체에 대해 인증합니다 ('호스트'및 '관리자'와 같은 사용자도 마찬가지 임).

도움이 되었기를 바랍니다.