2012-10-17 3 views
0

? - 동일한 MVC 4 호스팅 서비스 스택 웹 서비스 내에 여러 인증 공급자를 배치 할 수 있습니까? 다양한 수준/유형의 인증이 필요한 내부 및 외부 서비스를 사용하는 여러 끝점을 갖게됩니다.서비스 스택 인증

URL에 따라 다른 인증 공급자가 사용되도록 지금까지 단 하나의 사용자 지정 인증 공급자를 제공하는 예를 발견 했으므로 처음에는 두 가지 사용자 지정 공급자를 구현해야합니다.

답변

1

예. 복수 제공자을 사용할 수 있습니다. 그렇다면 다른 리소스에 대해 역할을 수행하여 내부 대 외부 수준을 관리하는 (URL)을 가질 수 있습니다.

예제 프로젝트 https://github.com/ServiceStack/SocialBootstrapApi을 살펴보십시오. 이 예제에는 다양한 인증 공급자가 많이 있습니다. 각 인증 공급자는 사용자 지정 공급자의 IAuthProvider.Provider 속성과 공급자의 빌드를 사용하여 공급자가 확인되는 경로 인/auth/{provider}를 확인합니다.

사용할 각 인증 공급자를 등록해야합니다. 그런 다음

//Register all Authentication methods you want to enable for this web app.    
Plugins.Add(new AuthFeature(
    () => new CustomUserSession(), //Use your own typed Custom UserSession type 
    new IAuthProvider[] { 
     new CredentialsAuthProvider(),   
     new TwitterAuthProvider(appSettings), 
     new FacebookAuthProvider(appSettings), 
     new DigestAuthProvider(appSettings), 
     new BasicAuthProvider(),    
     new GoogleOpenIdOAuthProvider(appSettings), 
     new YahooOpenIdOAuthProvider(appSettings), 
     new OpenIdOAuthProvider(appSettings),  
})); 

당신이 좋아하는 다른 URL을 쳐서 로그인 할 수 있습니다

  • /인증/페이스 북
  • /인증/트위터