0

我正在使用作爲「概念驗證」創建的項目來查看Web API 2。我正在嘗試查看自己的代碼是否注入了客戶身份驗證。我有一個內部身份驗證/登錄服務,我想調用它來確定登錄憑據是否有效,然後在有效時獲取用戶值(id,角色等)。對用戶進行身份驗證但是我想要

我使用「個人帳戶」作爲身份驗證類型創建了項目,但我很難弄清楚我要調用服務的位置,然後將結果映射到IdentityUser(或某個IUser)對象。

在生成ApplicationOAuthProvider類存在,從一個上下文對象傳遞用戶名和密碼,像這樣的代碼:

public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context) 
{ 
    using (UserManager<IdentityUser> userManager = _userManagerFactory()) 
    { 
     IdentityUser user = await userManager.FindAsync(context.UserName, context.Password); 
    // ... 

如何掛鉤到這一呼籲?

回答

0

你應該這樣做:

+0

如何將與鍋爐板代碼,我與身份驗證類型得到那個工作,我選擇的?我想保持持票人令牌,因爲我原型的服務將用於移動應用程序和移動Web客戶端。我認爲如果可能的話讓代碼生成工作適合我的情況,而不是從頭開始編寫所有的功能將是有益的。 – jlafay

+0

您將使用消息處理程序使用請求中的憑據,然後訪問auth/login服務以獲取用戶值(id,角色等)(如果它有效)。您可以保留該角色的默認授權過濾器。 – Fals

+0

問題,也許我需要重新考慮我的實現,因爲我想防止發送每個客戶端請求的用戶名/密碼憑據。 – jlafay

相關問題