2016-01-23 19 views
0

我使用webapi2 Owin認證集成自動生成的認證,也有跟的DbContext應用程序數據庫模型WebApi2 - 與其他的DbContext

如何集成在數據庫模型的其餘部分由Owin認證產生的用戶?

回答

2

在我的一個移植項目中,我們已經有用戶表。因此,這裏是我做過什麼來使用(而不是默認的自動生成的DB上下文)

public class ApplicationOAuthProvider : OAuthAuthorizationServerProvider 
{ 
... 
    public override Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context) 
    { 
     var container = new MyUnityContainer(); 
     var _tokenService = container.GetContainer().Resolve<ITokenService>(); 
     var userId = _tokenService.Validate(context.UserName, context.Password); 
     if (userId <= 0) 
     { 
      context.SetError("invalid_grant", "The user name or password is incorrect."); 
      return Task.FromResult<object>(null); 
     } 
.... 

這裏_tokenService是我自定義的DbContext的一種包裝,具有像任何其他DB方法的validate方法。

希望這會有所幫助。

+0

謝謝,這很好,我做了一次。但現在情況並非如此。 我需要的是使用自動生成的用戶DBContext與模型的其餘部分,而不是創建我自己的身份驗證 –