2011-03-20 4 views
5

인증 방법을 완전히 구성 할 수있는 웹 응용 프로그램을 만들고 싶습니다 (openid 일 수도 있고 Windows 인증 일 수도 있습니다).ASP.NET MVC에서 추상 인증을위한 프레임 워크가 있습니까?

web.config의 단일 설정을 변경하여 다른 인증 솔루션을 얻는 것을 선호합니다. 응용 프로그램에는 사용자 이름과 함께 Principal/Identity이 필요합니다 (일부 다른 사용자 세부 정보는 좋지만이 시점에서는 필요하지 않음).

나 자신을 도울 수있는 좋은 프레임 워크가 있습니까?

답변

3

ASP.NET Membership 기능에 익숙합니까? ASP.NET MVC 또는 WebForms와 함께 사용할 수 있습니다. 필요에 따라 다른 공급자를 연결할 수 있습니다. CodePlex에서 사용할 수있는 OpenID 제공 업체가 있습니다 (사용하지는 않았지만).

+0

그래, 나는 그것에 대해 알고 있지만, 가장 간단한 부분 만 제공한다. 모델, 완전한 솔루션에 관심이있다. 또한 마지막으로 API 문제가 발생했음을 기억합니다. 하지만 다시 한 번 살펴 보겠습니다. –

+0

그래,이게 최선의 방법이라고 생각해. 이것이 OpenID 구현 방법입니다. DotNetOpenAuth와 ASP.NET 멤버십을 결합하는 것은 매우 간단하고 간단합니다. –

0

Ryan의 답변에서 확장하려면 System.Web.Security.MembershipProvider (MVC3의 System.Web.ApplicationServices 라이브러리에 있음)에서 상속하는 클래스를 만들 수 있습니다. 당신처럼의 Web.config의 항목을 제공 할 필요가 사용하는 프로 바이더를 구성하려면 다음

<!-- In configuration -> system.web --> 
<membership defaultProvider="ServicesMembershipProvider"> 
    <providers> 
    <clear/> 
    <add name="ServicesMembershipProvider" 
     type="APISite.Infrastructure.Web.Membership.ServicesMembershipProvider" 
     enablePasswordRetrieval="false" 
     enablePasswordReset="false" 
     requiresQuestionAndAnswer="false" 
     requiresUniqueEmail="false" 
     maxInvalidPasswordAttempts="5" 
     minRequiredPasswordLength="6" 
     minRequiredNonalphanumericCharacters="0" 
     passwordAttemptWindow="10" 
     applicationName="/"/> 
    </providers> 
</membership> 

할 수 있습니다이 섹션에 정의 된 여러 공급자가 있고 시간에 사용할 하나에 defaultprovider 설정 .

관련 문제